如何刷新角度angular-oauth2-oidc代码id_token?

时间:2020-08-26 09:24:11

标签: angular angular8 angular-oauth2-oidc

我在我的角度应用程序中使用angular-oauth2-oidc。我的oauth配置在这里:

public static OauthConfig: AuthConfig = {
    issuer: 'http://myoauth.server',
    requireHttps: false,
    responseType: "code",
    redirectUri: window.location.origin + '/index.html',
    clientId: 'dashboard.dev.code',
    scope: 'openid profile',
    logoutUrl: window.location.origin + '/index.html',
    postLogoutRedirectUri: window.location.origin + '/index.html'
}

我正在使用我的组件。

export class AppComponent {
   constructor(private oauthService: OAuthService){
     this.oauthService.configure(AppSettings.OauthConfig);
      this.oauthService.tokenValidationHandler = new JwksValidationHandler();
      this.oauthService.loadDiscoveryDocumentAndLogin();
   }

  get hasValidToken(){
    return this.oauthService.hasValidIdToken();
  }
}

并在hasValidToken()中使用app.component.html

<div class="container-fluid" *ngIf="hasValidToken">
  ....
</div>

但是几分钟后,出现白色空白页。因为 hasValidToken 为false,但是访问令牌为true。

  1. 如何默默刷新id_token?
  2. 或者在id_token有效后如何运行this.oauthService.initCodeFlow()?我找不到令牌过期的任何事件。

0 个答案:

没有答案