Angular6 auth0/angular2-jwt isTokenExpire 函数总是返回 false,如果我们有



我正在使用auth0/angular2-jwt pakage来处理Angular6应用程序中基于JWT令牌的身份验证。 如果我们给出了有效的令牌是令牌过期函数总是返回假

我尝试过的以下代码:

localStorage.setItem('id_token', response['token']);
const helper = new JwtHelperService();
helper.isTokenExpired(localStorage.getItem('id_token')

constructor(
private http: Http,
private helper: JwtHelperService
) {
}
public handleResponse(response: Response){
localStorage.setItem('id_token', response['token']);  
console.log(this.helper.isTokenExpired(localStorage.getItem('id_token')));
}

我已经尝试了上述两种方法,它总是返回false

提前谢谢。

你应该使用 { tokenNotExpired } 'angular2-jwt'; 您将需要以下实现:

在您的应用程序模块内

import { tokenNotExpired } from 'angular2-jwt';
. 
.
.
@NgModule({
providers: [
.
.
{ provide: 'tokenNotExpired', useValue: tokenNotExpired }, 
]
})

和在您的服务中,您需要检查 toker 是否已过期:

constructor( @Inject('tokenNotExpired') private tokenNotExpired)
isTokenExpired(idToken){
return this.tokenNotExpired(idToken);
}

use tokenNotExpired('id_token'(

下面的链接可能会有所帮助。祝你好运。

https://github.com/auth0/angular2-jwt/issues/334#issuecomment-293968046

相关内容

  • 没有找到相关文章

最新更新