Pregunta

En WSGI, los encabezados se representan en el entorno como valores 'HTTP_XXX'. Por ejemplo, el valor Cookie: encabezado se almacena en la clave HTTP_COOKIE del entorno.

¿Cómo se representan múltiples encabezados de solicitud con el mismo nombre de encabezado?

¿Fue útil?

Solución

Se combinan varias cookies en un solo encabezado, separadas por punto y coma.

Se permiten varios encabezados por la especificación HTTP , pero solo para ciertos tipos de encabezados, y siempre está permitido combinar esos encabezados en uno (aunque usando comas, no punto y coma)

Otros consejos

Pensé que la respuesta a esta sería trivial, pero después de cavar un poco, no estoy tan seguro.

Esto es lo que he encontrado hasta ahora:

El WSGI PEP-333 ( http://www.python.org/ dev / peps / pep-0333 / ) sugiere que las variables de entorno deben contener lo que dice la especificación CGI.

La especificación CGI (cada vez más difícil de encontrar, muchos enlaces rotos, mejor que pude encontrar en draft-coar-cgi-v11-03 ) habla sobre metadatos y dice (sección 6.1.5)

  

" ;. Si varios campos de encabezado con el   se reciben el mismo nombre de campo y luego   el servidor DEBE reescribirlos como si   habían sido recibidos como solteros   campo de encabezado que tiene la misma semántica   antes de ser representado en un   metavariable "

Lo que me sugiere que si tiene varias líneas de encabezado con la misma clave, debe unirlas de alguna manera en una sola línea.

HTTP_COOKIE, como ejemplo, admite esto mediante la concatenación de todos los pares clave = valor en una línea con punto y coma entre ellos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top