我有一个网络应用程序。
<meta name="apple-mobile-web-app-capable" content="yes">
我把这个放在那里。
我添加到主屏幕。
但是,我意识到关闭网络应用程序后我总是需要重新登录。
如何让它保持会话?
我有一个网络应用程序。
<meta name="apple-mobile-web-app-capable" content="yes">
我把这个放在那里。
我添加到主屏幕。
但是,我意识到关闭网络应用程序后我总是需要重新登录。
如何让它保持会话?
有一个简单的答案,但到目前为止,我无法在 Apple 的官方文档中找到任何参考。
诀窍是这样做:
// Start or resume session
session_start();
// Extend cookie life time by an amount of your liking
$cookieLifetime = 365 * 24 * 60 * 60; // A year in seconds
setcookie(session_name(),session_id(),time()+$cookieLifetime);
如果您像这样延长会话 cookie 的生命周期,Safari 将保留会话 cookie,甚至允许在您的 Web 应用程序的“已安装主屏幕”版本和通过 Safari 本身的正常访问之间共享会话。
如需更详细的讨论,请查看我对这个问题的回答:
当我必须访问外部应用程序时,我使用静态类和静态变量(例如字典(字符串,对象))来保存数据。如果你使用 FormAuthentication,你会注意到
User.Identity.IsAuthenticated = true
但会话不存在。您可以使用“User.Identity.Name”作为键来获取字典中的数据。
这适用于 ASP.Net MVC3