Was sind Sitzungen Wie sie Stack-Überlauf arbeiten

Was sind Sitzungen Wie sie aus Stack-Überlauf etwas Geld arbeiten von

Aber basierend auf nur die Session-ID, wie wäre es in der Lage sein, meinen Benutzernamen während meiner anschließenden Traversal durch die Seite zu wissen? Speichert es die Daten auf dem Server als dict, wo der Schlüssel eine Session-ID und Details wie Benutzernamen sein würde. E-Mail usw. die Werte sein?

Ich bin immer hier ziemlich verwirrt. Brauche Hilfe.

fragte 27. September ’10 um 13:26 Uhr

"Sie wollen nicht, dass die Daten Client-Seite gepflegt werden". Warum nicht? Wenn Sie eine starke Verschlüsselung verwenden können Sie den Client halten lassen halten, die Session-Daten verschlüsselt und in einem Cookie gespeichert. Diese stark vereinfacht, um mehrere Knoten skalieren, wie die Server brauchen nicht zu „erinnern“ nichts. – Matt Harrison 30. Januar ’15 um 20:56 Uhr

"Session" ist der Begriff, um sich auf ein Benutzer Zeit gerade eine Website verwendet. Es soll die Zeit zwischen ihren ersten Ankunft stellen sie auf einer Seite in der Website, bis die Zeit die Website nicht mehr verwenden. In der Praxis ist es unmöglich zu wissen, wenn der Benutzer mit der Seite durchgeführt wird. In den meisten Servern gibt es ein Timeout, die automatisch eine Sitzung endet, wenn keine andere Seite von demselben Benutzer angefordert wird.

Das erste Mal, wenn ein Benutzer eine Art Session-ID verbindet erzeugt (wie es hängt von der Web-Server-Software fertig ist und die Art der Authentifizierung / Anmeldung erhalten Sie auf der Website verwenden). Wie Cookies, wird dies in der Regel nicht in der URL nicht mehr gesendet bekommen, weil es ein Sicherheitsproblem ist. Stattdessen wird es zusammen mit einem Haufen anderer Sachen gespeichert, die kollektiv auch als Sitzung bezeichnet wird. Session-Variablen sind wie Cookies – sie zusammen mit einer Anforderung für eine Seite gesendet Name-Wert-Paare sind, und kehrte mit der Seite vom Server – aber ihre Namen werden in einem Web-Standard definiert.

Einige Session-Variablen werden als HTTP-Header übergeben. Sie sind hin und her hinter den Kulissen von jeder Seite browse weitergegeben, so dass sie nicht zeigen, in dem Browser und jeder etwas sagen, das privat sein kann. Unter ihnen sind die USER_AGENT oder Art der Browser die Seite anfordert, die Referrer oder die Seite, die auf der Seite verlinkt angefordert wird, usw. Einige Web-Server-Software ihre eigenen Header oder übertragen zusätzliche Sitzungsdaten speziell für die Server-Software hinzufügt. Aber die Standard diejenigen sind ziemlich gut dokumentiert.

Ich hoffe, das hilft.

beantwortet 27. September ’10 um 14:18 Uhr

Ich werde versuchen, auf einfache Weise zu erklären.

Stellen Sie sich in einer Bank sind, versuchen, etwas Geld von Ihrem Konto zu erhalten. Aber die Bank ist pechschwarz, und Sie werden von weiteren 20 Personen umgeben. Sie können einander nicht sehen, und jeder hat die gleiche Stimme. Mit anderen Worten, HTTP staatenlos.

ok, so dass das Verfahren bei der Bank ist wie folgt:

  1. Sie machen eine Anfrage um Geld abzuheben, und dann
  2. müssen Sie kurz auf dem Sofa warten, und 20 Minuten später
  3. Sie müssen gehen und tatsächlich Ihr Geld zu sammeln.

Aber wie wird der Erzähler sagen abgesehen von allen anderen – der Kassierer kann nicht sehen oder leicht erkennen Sie, denken Sie daran, weil die Lichter alle aus sind.

Wenn Sie zum ersten Mal auf dem teller erscheinen, er / Erzähler sagt etwas im Verborgenen: "wann immer Sie mir sprechen," sagt der Erzähler, "Sie sollten zuerst yourlself als GNASHEU329 identifizieren – das so, wie ich es weiß, ist man".

Niemand sonst kennt das Geheimnis Passcode ein.

Also entscheide ich, um zu gehen und für 20 Minuten entspannen und dann später gehe ich zum Kassierer und sagen "Ich möchte meinen Rückzug zu sammeln"

Der Erzähler fragt mich: "Wer bist du!"

"Es ist mir, Herr George Banks!"

Und dann sage ich ihnen mein Passwort ein: GNASHEU329

"Sicherlich Herr Banks!"

Das ist im Grunde wie eine Sitzung funktioniert. Es ermöglicht eine eindeutig in einem Meer von Millionen von Menschen zu identifizieren. Sie müssen sich jedes Mal zu identifizieren, die Sie mit dem Geld beschäftigen.

Hoffe, das Sinn für Sie. Wenn Sie Fragen bekam oder sind unklar – bitte posten Kommentar und ich werde versuchen, es für Sie zu klären.

HTTP staatenlos Verbindungsprotokoll, das heißt, der Server nicht zwischen den verschiedenen Verbindungen von verschiedenen Benutzern unterscheiden können.

Daher kommt Cookie, sobald ein Client erstmals zu einem Server verbindet, erzeugt der Server eine neue Session-ID, die dem Client als Cookie-Wert wird später gesendet. Und von nun an wird diese Session-ID, die Client-Verbindung zu identifizieren, weil innerhalb jeder HTTP-Anforderung wird es die entsprechende Session-ID innerhalb Cookies zu sehen.

Jetzt für jede Session-ID, der Server eine Datenstruktur hält, die ihm spezifischen Daten Benutzer zu speichern, ermöglicht, diese Datenstruktur können Sie abstrakt Sitzung aufrufen.

beantwortet 27. September ’10 um 13:35 Uhr

Können Sie etwas mehr Licht auf diese setzen – "Jetzt für jede Session-ID, Server hält eine Datenstruktur, die ihm spezifischen Daten Benutzer zu speichern, ermöglicht, diese Datenstruktur Sie abstrakt Sitzung aufrufen können."? Welche spezifischen Client-Informationen führt der Server speichert? – PK_ 27. Februar ’14 um 18:00 Uhr

Können Sie etwas mehr Licht auf diese setzen – "Jetzt für jede Session-ID, Server hält eine Datenstruktur, die ihm spezifischen Daten Benutzer zu speichern, ermöglicht, diese Datenstruktur Sie abstrakt Sitzung aufrufen können."? Welche spezifischen Client-Informationen führt der Server speichert? – Gab 13. August ’15 um 11:59

Quelle: stackoverflow.com

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

17 + 8 =