Ibm mobilefirst Mobilefirst 7.1-WL.Client.updateUserInfo()和会话超时问题

Ibm mobilefirst Mobilefirst 7.1-WL.Client.updateUserInfo()和会话超时问题,ibm-mobilefirst,mobilefirst-server,Ibm Mobilefirst,Mobilefirst Server,根据我的客户要求,我必须在会话超时时实现自动注销。为了实现这一点,我在客户端创建了一个计时器,它每分钟检查用户是否仍然经过身份验证。若用户未通过身份验证,则显示消息并将用户路由回登录页面 因此,我将应用程序设置为会话相关模式。我已经像这样更新了worklight属性 mfp.session.independent=false mfp.attrStore.type=httpSession serverSessionTimeout=10 我还更新了authenticationConfig.xml,

根据我的客户要求,我必须在会话超时时实现自动注销。为了实现这一点,我在客户端创建了一个计时器,它每分钟检查用户是否仍然经过身份验证。若用户未通过身份验证,则显示消息并将用户路由回登录页面

因此,我将应用程序设置为会话相关模式。我已经像这样更新了worklight属性

mfp.session.independent=false
mfp.attrStore.type=httpSession
serverSessionTimeout=10
我还更新了authenticationConfig.xml,其中设置了expirationInSeconds,如本文(文档)所述


我阅读了其他几个线程,发现每分钟我都可以调用WL.Client.isUserAuthenticated(“MyReleam”),检查用户是否仍然登录。此方法存在问题,它不与服务器同步,因此我们假设先调用WL.Client.updateUserInfo(),它将用户身份与服务器同步,然后检查身份验证,但它会带来另一个会话超时问题。如果我每分钟调用WL.Client.updateUserInfo(),它将扩展我的会话。所以基本上,如果我每分钟都在检查的话,会话就不会超时


有谁能帮助我了解如何实现此功能?我应该使用哪种方法来检查用户是否仍在进行身份验证或会话是否超时

我认为可以从另一个角度来看待应用体验。
只需让会话超时值继续运行即可

一旦达到会话超时,这意味着在客户端向服务器发送下一个请求时,服务器将再次质询应用程序

为什么要人为地强迫应用程序移动到登录屏幕呢?让服务器会话执行它应该执行的操作

否则,根本不必“同步”。在应用程序上保持计时器运行。

每当用户执行“操作”时,将其重置。如果用户不执行任何操作,计时器将达到其目标,然后在客户端强制注销

谢谢你,伊丹。我会考虑这个解决方案。
<loginModule name="CustomLoginModule" expirationInSeconds="-1">