Empfohlenes Tutorial: PHP-Tutorial
Arbeitsprinzip der Sitzung
1. Sitzung erstellen
Wann Wenn ein Benutzer auf einen Server zugreift und der Server eine Sitzung aktiviert, erstellt der Server beim Erstellen dieser Sitzung zunächst, ob die vom Benutzer gesendete Anfrage eine Sitzungs-ID enthält Die ID gibt an, dass sich der Benutzer zuvor angemeldet und eine SESSION für diesen Benutzer erstellt hat. Anschließend sucht der Server die SESSION im Speicher des Servers anhand der SESSION-ID. Wenn die Client-Anfrage die SESSION-ID nicht enthält, wird sie nach dieser SESSION gesucht Der Client erstellt eine SESSION und generiert eine SESSION-ID, die sich auf diese SESSION bezieht. Diese SESSION-ID ist eine eindeutige, sich nicht wiederholende und schwer zu findende reguläre Zeichenfolge. Diese SESSION-ID wird zur Speicherung in dieser Antwort an den Client zurückgegeben, und es ist COOKIE, das diese SESSION-ID während der Interaktion speichert Der Browser kann diese Kennung nach Regeln automatisch an den Server senden.
2. Sitzung verwenden
Wir wissen, dass wir im IE Cookies in der Internetoption des setzen können Wird das Tool deaktiviert, wenn die Cookies des Clients deaktiviert sind und die SESSIONID nicht mehr verwendet werden kann? Ich habe einige Informationen gefunden, die darauf hinweisen, dass es andere Mechanismen geben kann, die die Sitzungs-ID trotzdem an den Server zurückgeben können, wenn COOKIE deaktiviert ist.
Eine häufig verwendete Technologie ist das sogenannte URL-Rewriting, bei dem die Sitzungs-ID direkt an das Ende des URL-Pfads als zusätzliche Informationen an den URL-Pfad angehängt wird, in der Form:
http://…. /xxx;jSession=ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng! -145788764;
Der andere wird als Abfragezeichenfolge an die URL angehängt, in der Form:
http://…. . /xxx? jSession=ByOK3vjFD75aPnrF7C2HmdnV6QZcEbzWoWiBYEnLerjQ99zWpBng! -145788764
Es gibt auch ein ausgeblendetes Formularfeld. Das heißt, der Server ändert das Formular automatisch und fügt ein ausgeblendetes Feld hinzu, sodass die Sitzungs-ID beim Absenden des Formulars an den Server zurückgegeben werden kann.
Sitzungsfunktion
Die grundlegende Funktion von Session besteht darin, einige Informationen über Benutzer- und Serversitzungen auf der Serverseite zu speichern. Typische Anwendungen sind:
1. Ermitteln Sie, ob der Benutzer angemeldet ist.
2. Warenkorbfunktion.
Sitzungsinstanzproblem
Bestehende Systeme A, B; A ist ein Websystem, das unabhängig ausgeführt werden kann, das heißt, es kann Sitzungen direkt mit dem Browser abwickeln. System B basiert auf Mobilgeräten und muss die Funktionsschnittstelle von System A aufrufen.
Bei Änderungen, also wenn die Login-Verifizierung und die Sitzungsspeicherung unverändert bleiben, kann System B die Anfrage des Frontend-Benutzers bearbeiten.
Die hier bereitgestellte Lösung besteht darin, PHP zur Implementierung zu verwenden
Nachdem sich der Benutzer erfolgreich angemeldet hat, wird die Sitzungs-ID der gespeicherten Sitzung angezeigt an System B zurückgegeben, und dann bringt System B jedes Mal die Sitzungs-ID, wenn es andere Schnittstellen anfordert.
ADas System fügt session_id (session_id) vor session_start hinzu;
Auf diese Weise kann System B A sicher anrufen
Empfehlungen zu verwandten Themen: PHP-Sitzung (einschließlich Bilder, Videos, Fälle)
Das obige ist der detaillierte Inhalt vonSo funktioniert die Sitzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!