iPhone "Bookmark to Homescreen"删除 cookie 和 session ?

标签 iphone web-applications mobile-safari iphone-standalone-web-app

现在我正在开发一个基于 Web 的应用程序,用户必须首先登录。

当我通过 iPhone Safari 打开页面、登录并重新启动 Safari 时,我仍然处于登录状态(Cookie 和 session ID 仍然设置)。

但是当我使用“添加到主屏幕”添加此页面时,每次单击该页面的图标时,我都必须再次登录。

我没有找到任何相关信息。我该怎么做才能让我的用户可以将此页面设置为他们的主屏幕 作为图标,并且每次打开它时仍然不需要登录?

最佳答案

一个非常简单的方法可能是在您的书签 URL 中使用唯一的 token ,它可以为您提供唯一的设备标识符。

示例: http://myWebApp.com/?token=randomId29238/1

可以在 Mobile Safari 中打开应用程序时以及提示用户“添加到主屏幕”信息之前在服务器端生成 token 。 然后可以使用快速重定向 (…&token=randomToken) 或位置哈希 (…#randomToken) 将 token 添加到 URL。

现在,只要从主屏幕打开书签, token 就会发送到您的服务器,您可以识别用户的事件 session 。 您还可以使用 token 作为永久 session ID,但出于安全考虑,我建议不要这样做。

为了允许将来的注销和登录过程,您始终可以将新 session 分配给 token 。

每当用户从主屏幕重新打开您的链接时, token 将作为唯一的设备标识符。

关于iPhone "Bookmark to Homescreen"删除 cookie 和 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3813599/

相关文章:

iphone - IOS 6 中的引用错误

iphone - UIImage + NSCache 与 [UIImage imageNamed :]

java - Web 应用程序中的 Jboss 共享库

html - 在 iOS Safari 中禁用 flex 滚动

ios - 如何在 iOS 设备上从 Mobile Safari 启动 map 应用程序?

iphone - UIImagePickerController 对某些图像返回 Null

php - html5 嵌入 mp4 视频 |如何知道设备是iphone 3/3gs 还是4 | mp4尺寸太大

algorithm - 小世界理论的实现——就像在 XING 中一样

javascript - 从 XMLHttpRequest-Object 获取响应文本

iphone - 为什么 UIWebView anchor 的目标被忽略?