簡體   English   中英

Angular 6-路由器無法導航到下一頁

[英]Angular 6 - Router can't navigate to next page

在打開任何組件之前,我都有一種用於身份驗證用戶的方法。 當我收到來自服務的isAuthorized時,只需要將用戶轉發到他請求的組件。 就我而言,我停留在同一頁面上,該應用程序正常運行,沒有錯誤,沒有日志可跟蹤此問題,只是停留在該頁面上。 誰能告訴我我做錯了什么?

 AuthUser() {
    let auth = new Authorize();
    auth.Credentials.CredentialsData1 = this.email;
    auth.Credentials.CredentialsData2 = this.password;
    auth.ResourceId = this.authGard.requestedComponentID;

    this.http.post(this.appGlobal.BASE_SERVER_ADDRESS + 'api/AppServer/Authorize', auth).subscribe((res) => {
      if (res['IsAuthorized'] == true)
        this.router.navigate([this.authGard.requestedComponent]);
      else this.router.navigate(['auth/unauthorized']);
    });
  }

在此處輸入圖片說明

我最近為團隊中的某人提供了類似問題的幫助。

我假設“ FuelDashboard”中的組件通過身份驗證檢查得到保護。

但是,我看不到您保存res ['IsAuthorized']響應。

問)“ FuelDashboard”中的組件是否檢查身份驗證?

問)是否有未經授權的請求使用戶返回登錄頁面?

可能的答案-您將必須將響應(res ['IsAuthorized'])保存到一個持久位置,以便FuelDashboard可以檢查用戶是否已通過身份驗證。

您的路線是FuelDashboard嗎? 我相信您從this.authGuard.requestedComponent獲得組件名稱,而不是路由名稱,而不是在app.routing.module.ts上創建的路由或選擇的任何路由。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM