Frage

Semikolon-;, die Cookie:-Zeichenfolge oder eine andere Zeichenfolge?

War es hilfreich?

Lösung

Überprüfen von Cookies in einer HTTP-Anforderung

Der Cookie:-Header hat die folgende Syntax:

Cookie: <Name> = <Value> { ; <Name> = <Value> }

Daher werden einzelne Cookies durch das Semikolon getrennt.

Setzen von Cookies in einer HTTP-Antwort

Wenn Sie dagegen ein Cookie in der Antwort setzen, gibt es ein Cookie pro Set-Cookie:-Header:

Set-Cookie: <Name> = <Value> [ ; expires = <Date>] [ ; path = <Path> ] [ ; domain = <Domain> ] // etc…

Um mehrere Cookies zu setzen, wird der Set-Cookie-Header in einer HTTP-Antwort wiederholt.


Hinweise:

  • Schauen Sie sich hier ein Tutorial mit Beispielen und RFC 6265 HTTP-Statusverwaltungsmechanismus für eine normative Referenz mit allen Details der Syntax.
  • Der inzwischen veraltete RFC 2965 definierte ein alternatives Paar von Headern Cookie2 und Set-Cookie2, die aufgegeben wurden .
  • Die veralteten Versionen des HTTP State Management Mechanism ( RFC 2109 und RFC 2965 ) boten die Möglichkeit, mehrere Set-Cookie- (oder Set-Cookie2-) Header in einen zu falten. Diese Faltung wird jedoch von der neuesten RFC 6265 -Spezifikation nicht empfohlen.

Andere Tipps

Die Antwort ist ein Komma-,-Zeichen.

In Abschnitt 4.2.2 von RFC 2109 gibt es diese Spezifikation des Set-Cookie-Headers

   set-cookie      =       "Set-Cookie:" cookies
   cookies         =       1#cookie

mit der folgenden Anweisung Informell umfasst der Set-Cookie-Antwortheader das Token Set-Cookie:, gefolgt von einer durch Kommas getrennten Liste von einem oder mehreren Cookies. (Formale Bedeutung von # oben Die Notation ist in RFC 733 in Abschnitt A definiert. NOTATIONAL CONVENTIONS Punkt 5

Ein Konstrukt "#" wird ähnlich wie "*" wie folgt definiert:

              <l>#<m>element

zeigt mindestens <l> und höchstens <m>-Elemente an, die jeweils durch getrennt sind ein oder mehrere Kommas (",").

Ja, RFC 2109 wurde von RFC 2965 überholt, was wiederum von RFC 6265 überholt wurde .
Nein, es ändert sich in diesem Zusammenhang nichts als

  • Die meisten vorhandenen HTTP-Server und -Clients unterstützen RFC 2109
  • RFC 6265 verbietet nicht das Falten von Set-Cookie
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top