2017-10-06 77 views
0

我是新的角4我創建了一個應用程序使用角4我有一個登錄頁面和主頁page.When我用我的憑據登錄時,我將導航到主頁。退出所有瀏覽器標籤當一個標籤註銷

如果我的應用程序在多個選項卡中打開,當我從一個選項卡註銷時,應用程序中的其他選項卡上的任何點擊應該重定向到登錄頁面,因爲它發生在gmail中。

任何人都可以幫助我這個。提前感謝。

+0

你能否提供一些代碼示例,這樣我們就可以知道你是怎麼韓德爾您的授權,以及如何存儲用戶數據 –

+0

可以請你告訴我如何刷新或r如果用戶從一個選項卡註銷,則在應用程序內部發生單擊事件時,將url或頁面加載到其他選項卡中。這將解決我的問題。謝謝 –

回答

0

您可以發送一個請求到服務器無效的認證令牌(不涉及角)和所有標籤需要在服務器上定期檢查,如果他們的標誌仍然是有效的,如果不註銷自己。

0

解決方案:

請保持一個認證令牌,它會幫助你。這是不相關的角4

例子:

  1. 在數據庫中創建一個令牌和存儲,同時登錄
  2. 檢查標記爲每個後端調用令牌是否可用與否
  3. 一旦令牌不可用重定向到登錄頁面
  4. 註銷時從數據庫中刪除令牌
  5. 您打開了多個選項卡,從一個選項卡t,然後嘗試從另一個選項卡中單擊,它會檢查該令牌,一旦令牌是不是在數據庫中可用它會自動跳轉到登錄頁面

這是你的問題的簡單解決方案

0

在你存儲令牌的情況下/在本地存儲的登錄信息,你可以聽的變化 這樣的:

window.addEventListener('storage', (event) => { 
    // there is a problem with IE (in all other browsers event not emitted in current window) 
    // so need to check that it is the other tab that emitted event 
    // and avoid infinite loop 
    if (!document.hasFocus() && event.key === environment.localStorageTokenKey) { 
    // do stuff here 
    window.location.pathname = '/'; 
    } 
}, false);