angularjs 成功注销后keycloak会话未终止

ej83mcc0  于 2023-09-30  发布在  Angular
关注(0)|答案(1)|浏览(149)

我正在使用keycloak.logout()从我的angular4和angularjs应用程序注销。我可以成功注销,但注销后,当我去keycloak服务器,我得到我的会话活动。如何解决这个问题?

2ic8powd

2ic8powd1#

我知道这个线程是一个数年之久,在这一点上,但作为一个人谁最近遇到了这个问题,并设法解决它,我认为我欠它给予一个回应。
在我的例子中,问题是由于在(click)事件上调用keycloak.logout()函数来获取标记而引起的。通过将函数调用更改为由按钮触发,会话似乎正确关闭并重定向到登录页面。
更具体地说,给出了一些具有logOut()函数的组件:

logout.component.ts

async logOut() {
  await this._keycloak.logout(window.location.origin)
}

使用:

logout.component.html

<a href="..." (click)="logOut()"> Log Out </a>

会导致会话无法关闭,但通过将<a>替换为<button>,问题得到了解决。

signout.component.html

<button (click)="logOut()" clrDropdownItem>Log out</button>

相关问题