2015-03-25 7 views
5

Ich initialisiere das Token, das generiert wird, nachdem ich mich in $ window.sessioStorage bei meiner Anwendung angemeldet habe.

var token = this.$window.sessionStorage["apiKey"]; 

Aber dieses Token scheint nicht definiert werden, wenn ich die URL (nach Login) und offen in verschiedenen browser.I'm umgeleitet zurück zur Login-Seite kopieren. Behält $ window.sessionStorage die Werte von Variablen im selben Browserfenster oder was könnte eine andere Möglichkeit sein, den Wert von token beizubehalten, auch wenn ich die Seite in einem anderen Browserfenster geöffnet habe?

Antwort

3

, dass das richtige Verhalten

Die session Eigenschaft ist erlaubt Ihnen, eine Sitzung Speicher Objekt zuzugreifen. sessionStorage ist ähnlich wie localStorage, der einzige Unterschied ist ist, während die in localStorage gespeicherten Daten kein Ablaufdatum haben. Die in sessionStorage gespeicherten Daten werden gelöscht, wenn die Seitensitzung beendet wird. Eine Seitensitzung dauert so lange, wie der Browser geöffnet ist und über Seiten neu lädt und wiederherstellt. Das Öffnen einer Seite in einer neuen Registerkarte oder einem neuen Fenster führt dazu, dass eine neue Sitzung initiiert wird.

Sie Informationen halten können, auch wenn der Browser geschlossen wird und ein anderes Mal wieder geöffnet durch localStorage verwenden, aber, wie gesagt, wenn Sie anderen Browser geöffnet werden Sie Artikel agains setzen müssen.

Lokale Speicher Beispiele here

Code-Beispiel:

// set something in localStorage 
localStorage.setItem('bgcolor', 'green'); 


// get something from localStorage 
localStorage.getItem('bgcolor') // it will output green 
+0

Dann werde ich die Variable value.That lösen, was Sie @Kosmo versuchen zu sagen? – forgottofly

+0

Ja! sessionStorage behält Werte bei, bis Sie Seite/Browser schließen und nicht zwischen Browsern übertragen werden. – Kosmog

+0

Was also ist die Lösung, wenn ich den Wert unabhängig von den Browserverwendungen übertragen oder speichern möchte? – forgottofly

Verwandte Themen