2017-10-08 75 views
-1

我一直致力於在角度應用程序中實現用戶身份驗證。我以一種將令牌存儲在本地存儲中的方式實現。如何在會話存儲中存儲數據,以便在關閉瀏覽器時刪除數據?

這是我的代碼,當用戶輸入用戶憑證並按提交時執行。

this.http.post('http://localhost:3000/users/login', this.user).subscribe(data => { 
    if (data['token']) { 
    localStorage.setItem('mean-token', data['token']); 
    location.reload(); 
    this.router.navigate(['/']); 
    } 
}); 

我的應用程序將令牌存儲在本地存儲中,並且在關閉瀏覽器時令牌不會被刪除。我希望在關閉瀏覽器時刪除令牌。我怎樣才能做到這一點?


問題更新: 我明白,我需要存儲在會話存儲,而不是本地存儲數據,但我一直沒能找到如何做到這一點的角度4.我想知道如何它與Angular 4一起開發。

回答

1

「我希望在瀏覽器關閉時刪除令牌。」

localStorage將會話永久保存,但在瀏覽器關閉時SessionStorage關閉會話。

https://code.google.com/p/sessionstorage/

+0

感謝商業自殺爲您的幫助。我想我應該更清楚我的問題。我會更新我的問題。我想問的問題是如何以角度4的方式將數據存儲在會話存儲中而不是本地存儲中。我搜索瞭如何做到這一點,但是我一直無法找到它。 –

+0

@ M.Kim,我認爲這篇文章會幫助你:https://stackoverflow.com/questions/39840457/how-to-store-token-in-local-or-session-storage-in-angular-2 –

相關問題