如何在IBM worklight服务器端登录模块中维护会话

时间:2013-08-16 09:34:51

标签: ibm-mobilefirst worklight-studio

在我的IBM worklight演示应用程序中,我实现了Login Module。它工作正常,但我应该以什么方式维持会话?如果执行了注销操作,我想注销我的用户,但是当应用程序进入后台时我不想注销。目前,我的应用程序被Android设备后退按钮关闭,或者无论如何,如果应用程序进入后台会话过期,用户必须再次登录。我可以实现这一点维护一些服务器端会话吗?

1 个答案:

答案 0 :(得分:1)

当您关闭应用程序时,操作系统会破坏WebView组件,从而破坏您的http上下文,特别是jSessionId cookie。因此,下次打开它时,您将有一个新会话,需要重新进行身份验证。

如果您真的想要实现“记住我”功能,可以使用多种解决方案。一个可能是以下

  1. 请记住,“记住我”会大大降低安全级别
  2. 见#1
  3. 创建某种服务器端令牌并将其存储在客户端(例如localStorage,encryptedCache或JSONStore)
  4. 确保此令牌与服务器端的用户身份相关联
  5. 在应用程序启动时将此令牌发送到服务器(例如,作为全局标头,作为适配器过程调用参数等)。
  6. 在您的登录模块中检测此令牌并建立经过身份验证的会话。