是否可以在angular 2 app的组件内检查id令牌是否已过期?我使用方法
获得了一个AuthServiceSystem.out.println(matcher.group(1));
System.out.println(matcher.group(2));
在模板中使用它可以正常工作。如果用户已注销,则返回false,在用户登录角度更改检测后重新运行模板中的函数并返回true。
在组件内部使用
public isAuthenticated(): boolean {
/* check if id_token is expired or not */
return tokenNotExpired();
}
用户登录后不会更新。需要刷新页面。我怎么能解决这个问题?
答案 0 :(得分:3)
我目前正在办公桌上使用angular2 jwt令牌并遇到同样的问题。 事实证明,我们需要在localStorage中将令牌设置为" id_token"
tokenNotExpired - 允许您检查本地存储中是否存在未过期的JWT。如果用户未经过身份验证,这可以用于有条件地显示/隐藏元素并停止导航到某些路线
注意:tokenNotExpired默认情况下会假设令牌名称为 id_token ,除非将令牌名称传递给它,例如:tokenNotExpired(' token_name')。这将在将来的版本中更改为自动使用在AuthConfig中设置的令牌名称。
希望它有所帮助!