Frage

In WSGI-Header werden in der environ als Wert 'HTTP_XXX' dargestellt. Zum Beispiel wird der Wert Cookie: Kopf am HTTP_COOKIE Schlüssel des environ gespeichert.

Wie sind mehrere Request-Header mit dem gleichen Header-Namen dargestellt?

War es hilfreich?

Lösung

Mehrere Cookies werden in einem einzigen Header kombiniert, getrennt durch Semikolons.

Mehrere Header dürfen von der HTTP-Spezifikation , aber nur für bestimmte Arten von Kopfzeilen, und es ist immer zulässig, diese Header zu einem kombinieren

(obwohl Komma, nicht Semikolons)

Andere Tipps

dachte ich, die Antwort auf diese trivial sein würde, aber nach ein wenig zu graben Ich bin mir nicht so sicher.

Hier ist, was ich bisher gefunden habe:

Das WSGI PEP-333 ( http://www.python.org/ dev / pep / pep-0333 / ) deutet darauf hin, dass die Umgebungsvariablen unabhängig von der CGI-Spezifikation sagt enthalten sollen.

Die CGI-Spezifikation (immer schwieriger zu finden, viele defekte Links, beste, das ich unter Entwurf-coar-cgi-v11-03 ) spricht über Metadaten und sagt (siehe Abschnitt 6.1.5)

  

“. Wenn mehrere Header-Felder mit der   gleicher Feldname empfängt dann der   Server muss neu schreiben sie, als ob   sie hatten als einzige empfangen worden   Header-Feld mit der gleichen Semantik   bevor sie in einem dargestellt werden,   Metavariable "

Was mir schlägt vor, dass, wenn Sie mehrere Kopfzeilen mit dem gleichen Schlüssel haben, können Sie sie nach oben irgendwie in einer Linie verbinden muss.

HTTP_COOKIE, als ein Beispiel, unterstützt dies durch all die Schlüssel Verketten = Wert-Paare in eine Linie mit Semikolons zwischen ihnen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top