Heim  >  Artikel  >  Backend-Entwicklung  >  Analyse der Prinzipien und Phänomene von Cookies

Analyse der Prinzipien und Phänomene von Cookies

小云云
小云云Original
2018-03-27 15:19:091968Durchsuche

Wenn es um Cookies geht, müssen wir mit dem http-Protokoll beginnen. Was ist das http-Protokoll? Eine Vereinbarung ist im wörtlichen Sinne eine Vereinbarung. Kommt es zu einer Vereinbarung, muss es mindestens zwei Teilnehmer geben und die Kommunikation zwischen den Teilnehmern muss solchen Vorgaben folgen.

So wie Baiyun und Kurotsuchi zusammen sind, ist festgelegt, dass die beiden in Zukunft in der von den beiden vereinbarten Sprache kommunizieren werden, und Kurotsuchi wird dies tun Tu es, wenn er diese Aktion sieht. Er urteilte, oh, es stellte sich heraus, dass er sich auf die Beine schlagen würde, also sprang er sofort auf ihn und schlug auf seine Beine. Baiyun streckte seine rechte Hand aus und Kurotsuchi schaute sie an und dachte: „Oh mein Gott, das ist die Zeit, Wasser zu trinken“, also reichte er ihm sofort das Wasser. Zu diesem Zeitpunkt streckte Baiyun seinen linken Fuß aus und Kurotsuchi küsste ihn sofort ihn. Gerade weil die Kommunikation zwischen den beiden Personen der gegenseitigen Vereinbarung folgte, wurde sie leicht verständlich und effizient ausgeführt.

Dasselbe gilt für das http-Protokoll. Die Teilnehmer dieses Protokolls sind der Client (Baiyun) und der Server (Black Earth).

Mit dem http-Protokoll wird die Kommunikation zwischen dem Client und dem Server einfach und verständlich. Wenn Baiyun und Heitu ihre Kommunikationsmethoden nicht wie vereinbart standardisiert hätten, würde Baiyun Kontakt aufnehmen Als Onkel Kurotsuchi seinen linken Fuß verletzte, dachte er wahrscheinlich, er würde sich selbst treten.

Als nächstes werfen wir einen Blick auf die Merkmale des http-Protokolls.

1. Unterstützt den Client/Server-Modus

3. Flexibel

5, staatenlos.

Unterstützung des Client/Server-Modus: Vereinfacht gesagt unterstützt es die Kommunikation zwischen zwei Personen, das heißt, es unterstützt Baiyun und Heitui dabei, miteinander zu sprechen.

Einfach und bequem: Genau wie die Kommunikation zwischen Baiyun und Heitu ist es so einfach wie das Ausstrecken der linken und rechten Hand. Das Gleiche gilt für das HTTP-Protokoll. Unabhängig davon, ob es sich um eine Client-Anfrage oder eine Server-Antwort handelt, können die entsprechenden Nachrichtenheader, Methoden und Nachrichtentexte der anderen Partei mitgeteilt werden, und beide Parteien können die Bedeutung der anderen Partei verstehen.

Der Grund für die Flexibilität liegt darin, dass HTTP die Übertragung jeder Art von Datenobjekt ermöglicht. Die Art der Übermittlung kann durch Content-Type markiert werden.

Keine Verbindung bedeutet, dass der Client den Server anfordert und der Server die Verbindung nach Abschluss der Antwort automatisch trennt. Es ist, als ob Bai Yun seine linke Hand ausstreckte, Kurotsuchi herüberkam, um auf seine Beine zu hämmern, und dann automatisch wegging, um andere Dinge zu tun.

Zustandslos bedeutet, dass der Client den Server anfordert und der Server nach Abschluss der Antwort keine Daten für diese Verbindung aufzeichnet. Genau wie Baiyun seine linke Hand ausstreckte, kam Kurotsuchi herüber, um auf die Beine zu hämmern. Nachdem du auf die Beine gehämmert hattest, hast du Onkel Kurotsuchi gefragt, was du gesagt hast, als du auf die Beine geschlagen hast.

Natürlich gibt es noch viel mehr HTTP-Protokolle. Auf die Details werden wir später noch näher eingehen.

Wie oben erwähnt, haben sich Baiyun und Kurotsuchi auf ihre eigene Kommunikationsmethode geeinigt, die sehr effizient und einfach ist, aber ihre Kommunikation weist auch bestimmte Probleme auf, nämlich die Staatenlosigkeit des http-Protokolls, also Onkel Kurotsuchi Als er Baiyuns Beine schlug, wusste er nicht, was zwischen ihnen gesagt wurde, und er konnte sich nur an ein paar Dinge erinnern Er schlug sich auf die Beine, Baiyun sagte zu Kurotsuchi: „Die Kraft der Hand war zu stark und es tat mir so weh. Bitte sei sanfter. Nachdem er das gehört hatte, milderte der schwarzhaarige Onkel sofort die Kraft der Hand und.“ Dann ging ich weg, um nach dem Hämmern andere Dinge zu tun. Sobald Kurotsuchi ging, streckte Kurotsuchi schnell seine linke Hand aus und schlug immer noch heftig auf seine Beine ein. Legen Sie sanft Ihre Hände und die Beine der alten Frau waren taub, nachdem sie sie geschlagen hatten. „Kuss, ich erinnere mich wirklich nicht.“

Was tun?

Wenn das so weitergeht, wird Onkel Kurotsuchi Baiyun zu Tode verärgern, also hat jemand einen Vorschlag gemacht. Jedes Mal, wenn Baiyun ihre Beine ausstreckt, wirft sie eine Notiz heraus, auf der einige ihrer persönlichen Anforderungen festgehalten sind. Onkel Kurotsuchi erhielt die Notiz, und während er die Notiz las, rannte er hinüber und führte entsprechende Antwortoperationen durch. Nachdem die Antwort abgeschlossen war, gab er die Notiz an Bai Yun zurück, damit Bai Yun seine Anforderungen aufschreiben konnte, wenn er ihn besuchte Das nächste Mal werfen Sie diese Notiz Kurotsuchi zu.

Obwohl diese Methode etwas unzivilisiert ist, löst sie das Problem, dass sich Onkel Kurotsuchi an nichts erinnern kann.

Ja, der obige Hinweis ist tatsächlich das Cookie, über das wir heute sprechen werden. Wenn der Client eine Anfrage an den Server sendet, kann er sich an dieses Cookie erinnern Der Status und die zugehörigen Informationen der letzten Anfrage werden gespeichert, sodass die Kommunikation Status und Erinnerung hat.

Viele Leute empfehlen die Verwendung von Cookies beim Speichern einiger Daten. Der Grund dafür ist, dass jedes Mal, wenn der Client den Server anfordert, Cookie-Informationen übermittelt werden Größe: Sobald die Lautstärke zunimmt, wird viel Bandbreite verbraucht.

Dann erklären wir einige grundlegende Funktionsprinzipien von Cookies:

Cookies übertragen Daten hauptsächlich über den Header HTTPHeader. Das heißt, Daten werden in Anforderungsheadern und Nachrichtenheadern übergeben. Der Cookie-Mechanismus definiert zwei Header: Set-Cookie-Header und Cookie-Header. set-cookie ist im Nachrichtenheader der Serverantwort vorhanden. Das Cookie ist im Nachrichtenheader der Clientanforderung vorhanden.

Der Cookie-Vorgang läuft wie folgt ab:



(1) Client Geben Sie die URL des Webservers in die Adressleiste des Browsers ein und der Browser sendet eine Anfrage zum Lesen der Webseite.

(2) Nach Erhalt der Anfrage generiert der Server einen Set-Cookie-Header, fügt ihn in die HTTP-Nachricht ein und sendet ihn an den Client zurück, um eine Sitzung zu initiieren.

(3) Nachdem der Client die Antwort erhalten hat und die Sitzung fortsetzen möchte, wird der Inhalt in Set-Cookie-ie herausgenommen, um eine Cookie.txt-Datei zu bilden und auf dem Client-Computer gespeichert.

(4) Wenn der Client erneut eine Anfrage an den Server stellt, sucht der Browser zunächst nach der Cookie.txt-Datei, die der Website auf dem Computer entspricht. Wenn ein Cookie gefunden wird, wird basierend auf dieser Cookie.txt ein Cookie-Header generiert, in die HTTP-Anforderungsnachricht eingefügt und an den Server gesendet.

(5) Der Server empfängt eine Anfrage mit einem Cookie-Header, ruft die benutzerbezogenen Informationen in seinem Cookie ab, generiert eine vom Client angeforderte Seitenantwort und leitet sie an den Client weiter. Jede vom Browser gestellte Webseitenanforderung kann die vorhandene Cookie-Datei übergeben, z. B. wenn der Browser den Webseitenvorgang öffnet oder aktualisiert.

So funktionieren Cookies im Grunde.

Darüber hinaus gibt es zwei Möglichkeiten, Cookies in PHP zu setzen:

1 Aufruf der setCookie-Funktion

2 Aufruf der session_start-Funktion

Hier ist ein Kurze Erklärung von session_start Sobald session_start() geschrieben ist, generiert der Server eine Datei mit dem Namen session_id auf dem Server und sendet gleichzeitig den Set-Cookie-Header mit dem Inhalt von phpsessid = dem Dateinamen der Sitzung an den Client Auf dem Server gespeichert, dh session_id, generiert der Client beim Empfang der Antwort eine Cookie-Datei, dh session_start enthält tatsächlich die setCookie-Operation, ist jedoch nicht so flexibel wie setCookie.

Verwandte Empfehlungen:

Detaillierte Erläuterung von Cookies für die PHP-Sitzungssteuerung

Detaillierte Erläuterung der Verwendung von Cookies

Lass uns gemeinsam Cookie lernen

Das obige ist der detaillierte Inhalt vonAnalyse der Prinzipien und Phänomene von Cookies. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn