如何在 SPA 应用程序(客户端)中检测 Windows ACS 会话是否过期



我们正在使用Durandal构建一个SPA应用程序,我们正在通过Windows Azure中的Windows ACS对用户进行身份验证。

我们目前遇到一个用户长时间打开其应用程序的问题。当他们返回时,ACS 令牌已过期,应用程序不会重定向到 ACS 登录名(因为它是 SPA 应用程序)。

是否有一种好方法可以在客户端检测Windows ACS会话超时?

我不知道 Durandal,但我知道所有 Ajax 调用都具有(可选)错误处理程序,您可以在其中测试服务器状态代码是 401 还是 403。(当用户在未通过身份验证时尝试访问安全资源时,通常就是这种情况)。

发生这种情况

时,您所要做的就是将用户重定向到具有正确参数的 ACS。

最新更新