首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在移动会话中模拟会话cookie?

在移动会话中模拟会话cookie?
EN

Stack Overflow用户
提问于 2013-03-04 21:19:50
回答 3查看 6.8K关注 0票数 16

乍一看,我惊讶地发现,我对会话cookie在移动设备上的行为方式的想法被现实所推翻。

在普通的桌面浏览器上,只要浏览器会话处于活动状态,行为就会存储会话cookie。如果最后一个浏览器窗口/进程已关闭,则应关闭该会话。

现在,在移动设备上,你几乎不会关闭浏览器应用程序,而只是将其发送到后台。

我在我的安装了Android 4的索尼Xperia Ray上发现,即使我清除了浏览器进程,会话cookie也没有过期。但在三星平板电脑设备上,情况就会如此。我不知道,iOS设备是如何做到这一点的。

这是个问题!?我应该怎么做才能解决这个问题?

现在,我决定让cookie在一天内过期。但我对此并不是很满意。

我应该降低生命周期吗?也许到8个小时?

EN

回答 3

Stack Overflow用户

发布于 2013-03-16 01:53:59

对于类似问题,我的解决方案是将document.referrer与cookie结合使用。如果用户在您的站点内导航,则继续使用cookie (如果存在),否则过期或替换cookie。

然而,当用户在你的网站上将浏览器放在后台时,问题仍然存在。如果他们继续浏览并仅使用您网站中的链接,则仍将使用cookie。

票数 5
EN

Stack Overflow用户

发布于 2013-03-15 05:04:26

我会问用户是否想记住这个位置。如果不是,则将cookie的过期设置为服务器的超时。您将为用户提供选择用户体验的选项。

您可以尝试附加到onbeforeunload事件并向服务器发送post以更改cookie的过期时间,或者如果cookie不是安全类型,则将其从java脚本中删除。

票数 2
EN

Stack Overflow用户

发布于 2013-03-19 05:22:40

这是一个有点下流的建议,并不是愚蠢的证据-但我认为它值得一提。我从来没有一部手机在空闲时保持与互联网的连接(它们都被切断以节省电池之类的)-而且移动网络回收IP地址的速度非常快。

将IP地址存储在会话数据中可能是值得的,如果IP地址发生更改,则可能需要结合上次访问的时间戳来销毁/重新启动会话?

显然,这假设客户端是通过移动网络连接的,而不是wifi。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15202521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档