这是一些背景,我使用隐式流程,我的令牌是JWT . 要注销,我正在使用方法调用signoutRedirectCallback .
我希望能够正确退出 . 这样我就可以以不同的用户身份登录 . 这样做时,我仍然拥有上一个用户的令牌?有没有办法完全记录用户,以便它没有最后一个用户的令牌?由于某种原因,令牌仍然存在 . 似乎真正注销的唯一方法是关闭浏览器页面并删除/删除identityserver3上的cookie?
这也可以回答我的另一个问题 . 如果用户单击主网格页面上的超链接并打开新选项卡(例如详细信息页面),如果用户注销新选项卡(详细信息页面),则仍会记录主网格页面(旧选项卡)在?同样,这是我没有完全退出的问题 .
任何人都可以给我一些关于如何正确注销以删除identityserver3上的cookie的指导?所以这是一个干净的名单 . 令牌仍然存在 . 谢谢 .
//Here is the code. In my main component I have a menuclick event and this works:
public MenuClick(event, item)
{
if (item === "signOut")
{
this.signOut();
}
}
public signOut()
{
this._LoginService.logOut();
}
//Here is the LoginService that calls the oidc-client method:
public logOutCall(): Observable<boolean>
{
return Observable.fromPromise(new Promise<boolean> (
resolve =>
{
this._oidcService.logOut();
resolve(true);
}
));
}
this._oidcService.logOut()调用实际的oidc-client方法signoutRedirectCallback() . 这工作,它重定向 . 但除非我关闭页面,否则令牌仍然存在 .
UPDATE: My testing team has told me that this issue is specifically with Chrome.
1 回答
要清除UserManager管理的状态,请调用
removeUser
. 当你触发注销时,应该为你调用,所以我没有'm curious why it' . 检查日志?