Domanda

In WSGI le intestazioni sono rappresentate nell'ambiente come valori 'HTTP_XXX'. Ad esempio il valore Cookie: è memorizzato nella chiave HTTP_COOKIE dell'ambiente.

Come vengono rappresentate più intestazioni di richiesta con lo stesso nome di intestazione?

È stato utile?

Soluzione

Più cookie sono combinati in un'unica intestazione, separati da punti e virgola.

Le intestazioni multiple sono consentite da le specifiche HTTP , ma solo per determinati tipi di intestazioni, ed è sempre consentito combinare quelle intestazioni in una (anche se si usano virgole, non punti e virgola)

Altri suggerimenti

Ho pensato che la risposta a questa sarebbe stata banale, ma dopo aver scavato un po 'non ne sono così sicuro.

Ecco cosa ho trovato finora:

The WSGI PEP-333 ( http://www.python.org/ dev / peps / pep-0333 / ) suggerisce che le variabili di ambiente dovrebbero contenere qualunque cosa la specifica CGI dica.

La specifica CGI (sempre più difficile da trovare, molti collegamenti interrotti, meglio che potrei trovare su draft-coar-cgi-v11-03 ) parla dei metadati e dice (sezione 6.1.5)

  

" ;. Se più campi di intestazione con il   lo stesso nome campo viene ricevuto quindi il   il server DEVE riscriverli come se   erano stati ricevuti come un singolo   campo di intestazione con la stessa semantica   prima di essere rappresentato in a   metavariable "

Il che mi suggerisce che se hai più righe di intestazione con la stessa chiave, devi unirle in qualche modo in una riga.

HTTP_COOKIE, ad esempio, supporta ciò concatenando tutte le coppie chiave = valore in una riga con punti e virgola tra loro.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top