English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Das HTTP-Protokoll ist ein zustandsloses Protokoll. Aber für eine kommerzielle Website muss es zwischen verschiedenen Seiten die Sitzungsinformationen beibehalten.
Wenn Benutzer während des Registrierungsprozesses auf der Website zu einer anderen Seite weitergeleitet werden müssen, aber gleichzeitig sicherstellen müssen, dass die zuvor ausgefüllten Informationen nicht verloren gehen.
In diesem Fall haben Cookies uns gut geholfen, das Problem zu lösen.
Fast alle Website-Designer verwenden Cookies, wenn sie Websites gestalten, weil sie möchten, dass die Benutzer eine freundlichere und menschlichere Benutzererfahrung haben, und gleichzeitig können sie auch die Informationen der Besucher präziser sammeln.
Cookies-Sammlung ist eine Datenmenge, die dem Response-Objekt und Request-Objekt angehört, und sie muss vor dem Gebrauch mit Response oder Request versehen werden.
Die Syntax zum Senden von Cookies an den Client ist normalerweise: }}
Wenn eine nicht vorhandene Cookies-Sammlung gesetzt wird, wird sie auf dem Client erstellt, wenn das Cookies bereits existiert, wird es ersetzt. Da Cookies als Teil der HTTP-Header-Informationen an den Client gesendet werden, wird der Code zum Senden von Cookies in der Regel vor den Tags des an den Browser gesendeten HTML-Dokuments platziert.
Wenn ein Benutzer Cookies lesen möchte, muss er die Cookies-Sammlung des Request-Objekts verwenden, der Verwendungsweg ist: Zu beachten ist, dass der Browser nur vor dem Download von Daten durch den Server in den Datenverkehr der Cookies-Sammlung des Servers eintreten kann, sobald der Browser mit dem Download der von Server heruntergeladenen Daten beginnt, wird der Datenverkehr der Cookies-Sammlung gestoppt, um Fehler zu vermeiden, sollte response.Buffer=True in der Programmierung und vor dem Code hinzugefügt werden.
1.Expires-Eigenschaft:Diese Eigenschaft wird verwendet, um Cookies eine Frist zu setzen, innerhalb derer Cookies aufgerufen werden können, wenn die Webseite geöffnet wird, nach Ablauf dieses Zeitraums werden Cookies automatisch gelöscht. Zum Beispiel: Setzen Sie das Ablaufdatum des Cookies auf2004Jahr4Monat1Tag, bis zu dem sie automatisch gelöscht werden. Wenn ein Cookies keine Ablaufzeit hat, beginnt ihre Lebensdauer beim Öffnen des Browsers und endet beim Schließen des Browsers, die Lebensdauer endet nach jeder Ausführung und beginnt bei der nächsten Ausführung neu.
2.Domain-Eigenschaft:Diese Eigenschaft definiert die Einzigartigkeit der übertragenen Cookies. Wenn nur ein bestimmtes Cookies an _blank">Sohu-Startseite gesendet wird, kann der folgende Code verwendet werden:
3.Path-Eigenschaft:Definiert, dass Cookies nur an angegebene Pfad-Anfragen gesendet werden, wenn die Path-Eigenschaft nicht gesetzt ist, wird der Standardpfad der Anwendung verwendet.
4.Secure-Eigenschaft:Spezifizieren Sie, ob Cookies vom Benutzer gelesen werden können.
5、Name=Value : Cookies werden in Form von Schlüssel-Wert-Paaren gesetzt und abgerufen.
Sie können ein Objekt namens cookie erstellen und Textinformationen speichern, senden Sie diese Information an den Browser und rufen Sie CGI.out auf, um den Cookie-Header zu setzen:
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = CGI::Cookie.new('name' => 'mycookie', 'value' => 'Zara Ali', 'expires' => Time.now + 3600) cgi.out('cookie' => cookie) do cgi.head + cgi.body { "Cookie stored" } end
Nun kehren wir zu dieser Seite zurück und suchen nach dem Cookie-Wert, wie folgt:
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = cgi.cookies['mycookie'] cgi.out('cookie' => cookie) do cgi.head + cgi.body { cookie[0] } end
The CGI::Cookie object includes the following parameters when instantiated:
Parameters | Description |
---|---|
name | Specify the name of the cookie. |
value | Specify the value of the cookie. |
expire | Specify the expiration date of the cookie. |
path | Specify the server path of the cookie. |
domain | Specify the domain of the cookie. |
secure | Specify whether cookies are transmitted through a secure HTTPS connection. |