2016-09-30 3 views
1

Jeder bietet mir Weg, ich kann HTML5 LocalStorage in Javascript verwenden, um Sitzung zwischen Server und Client zu behalten Sitzung Timeout, die alle Registerkarten oder Seiten umleiten wird beibehalten in der Sitzung Abgelaufene Seite.HTML5 LocalStorage zur Verwaltung der Sitzung über Seiten/Registerkarten unter derselben Domäne

Gibt es eine Möglichkeit (Anders als das) kann ich Sitzung über die Seite/Registerkarten unter derselben Domäne pflegen, um Sitzungstimeout zu verfolgen.

Vielen Dank im Voraus

+2

Was ist falsch am klassischen Sitzungsmodell? Der Client sendet nur ein Cookie (im Cookie-Speicher gespeichert), um sich zu identifizieren, und der Server entscheidet dann, ob diese Sitzung abgelaufen ist oder nicht ... und kann alle Daten speichern, die an diese über Cookie gesendete Sitzungs-ID angehängt sind. –

+0

LocalStorage ist ... lokal. Es ist überhaupt nicht mit dem Server verbunden. Es scheint kein geeignetes Werkzeug für den Job zu sein. – Quentin

+0

Ich brauche ein globales Objekt, das ich über die gleichen übergeordneten Webseiten/Tabs referenzieren kann, also nur nach localStorage fragen –

Antwort

1

Sie haben keinen Code geschrieben, so dass die denken nur ich tun kann, ist für Sie einfach ein allgemeines Beispiel zeigen, die Ihre Anforderung nicht vollständig entsprechen kann, sondern eine Idee geben, wie Sie tun können, es:

// show last settings pane if it's set 
if (localStorage.activePill) { 
    $('.nav-pill-control > li').removeClass('active'); 
    $('.nav-pill-control > li > a[href="' + localStorage.activePill + '"]').parent().addClass('active'); 
    $('.nav-pill-pane').hide(); 
    $(localStorage.activePill).show(); 
} 
+0

Die Frage lautete "Sitzung zwischen Server und Client zu verwalten". Wie sieht es mit dem Server aus? – Quentin

1

Das sessionstorage-Objekt entspricht das Objekt localstorage, mit der Ausnahme, dass es die Daten für nur eine Sitzung speichert. Die Daten werden gelöscht, wenn der Benutzer die bestimmte Browser-Registerkarte schließt.

+0

Während das stimmt, bin ich mir nicht sicher, wie es die Frage beantwortet. – Quentin

1

In HTML5 können Sie Session verwenden Objekt von Seite zu einem anderen zu übergeben:

// Daten speichern zu session

sessionStorage.setItem('key', 'value'); 

// Lassen Sie sich von session gespeicherten Daten

var data = sessionStorage.getItem('key'); 

// Entfernen gespeicherter Daten von sessionStorage

sessionStorage.removeItem('key') 

More Information

+0

Wie hilft dies "die Sitzung zwischen Server und Client zu erhalten", nach der die Frage fragt? – Quentin

Verwandte Themen