【问题标题】:How to preserve rememberMe token cookie in Cordova hybrid app?如何在 Cordova 混合应用程序中保留 rememberMe 令牌 cookie?
【发布时间】:2016-08-12 19:08:52
【问题描述】:

我正在使用 Cordova 将我的 Angular webapp 包装成适用于 Android 和 iOS 的混合应用程序。

我正在使用 Spring Security 进行登录并记住我的功能。当用户使用记住我登录时,spring 会自动创建记住我令牌并将其设置在域上。

在随机情况下,当我在 Android 上重新启动混合应用程序时,我看到令牌 cookie 丢失,我必须重新登录。

相同的代码在网络浏览器上运行良好。

【问题讨论】:

  • 您是否尝试检查 cookie 是否存在于您的移动设备上?在 Android 设备上,您可以使用 chrome dev tools 调试您的 cordova 应用程序。使用 chrome 开发工具调试应用后,可以在 Application -> Storage -> Cookies 中找到 cookie。
  • 我在我的一个 Cordova Applicaiton 中遇到了同样的情况,然后在搜索了很长时间后,我发现 InApp webkit 浏览器不支持 cookie,您必须使用 localstorage 才可以出于任何目的离线存储数据。如果是科尔多瓦,请参阅此以获取有关本地存储的更多信息 - cordova.apache.org/docs/en/6.x/cordova/storage/…

标签: cordova spring-security session-cookies remember-me


【解决方案1】:

是的,我在使用 Cordova 的 Android 上体验过这种情况。只要您的应用程序在前台或后台运行,呈现 HTML 并存储所有 javascript 变量的 webkit 就会保存在内存中。一旦你的应用程序从内存中删除,webkit 就会重新启动。它不像你的浏览器。从重新启动到重新启动,Cookie 似乎并不持久。如果您需要持久存储,请使用“存储”或使用 cordova 文件系统挂钩。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-08
    • 1970-01-01
    • 2019-05-30
    • 2016-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多