Safari中的session问题

lhw1204 2013-06-13 10:55:01
偶然间用safari浏览器访问了我做的一个项目,发现一直取不到session中的信息,做了下调试才知道safari每访问一个链接都会重新创建一个session。

原因: safari浏览器中默认的“接受cookie”是设置成“从访问过的网页”

解决方法:
1、手动将其改成“总是”就可以解决这个问题,但是一般用户自己手动改的情况是很低的。
2、虽然重新创建了一个新的session,但是之前的session没被销毁,所以可以利用页面传值,将sessionID隐藏在页面中传递到服务器获取session信息,但这种方式是不是有些麻烦,把session的信息直接放在页面中会不会不够安全

问题:
1. 第二种方法会不会存在安全隐患.
2. 有没有其它解决方法.
...全文
7531 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
u010191916 2013-06-26
  • 打赏
  • 举报
回复
楼上说的对,肯能是被拦截了!!
Go 旅城通票 2013-06-18
  • 打赏
  • 举报
回复
应该是被拦截了吧,设置p3p头试试
Response.AddHeader("P3P", "CP=CAO PSA OUR");
lhw1204 2013-06-14
  • 打赏
  • 举报
回复
引用 1 楼 net_lover 的回复:
首先,你重置safari浏览器的设置,这是大多数人使用的设置 再次,你的这些链接都是一个域下面的吗?不是通过iframe等嵌入的?
噢噢噢。 忘记说明了, 是嵌在一个平台下, 算第三方的应用。 正确的说法是 在外壳的cooike其实都是有的, 但是进来里面的应用就默认被禁止了。 就和Chrome浏览器有一个cookie的设置“阻止第三方 Cookie 和网站数据” 一样。
孟子E章 2013-06-13
  • 打赏
  • 举报
回复
首先,你重置safari浏览器的设置,这是大多数人使用的设置 再次,你的这些链接都是一个域下面的吗?不是通过iframe等嵌入的?

5,006

社区成员

发帖
与我相关
我的任务
社区描述
解读Web 标准、分析和讨论实际问题、推动网络标准化发展和跨浏览器开发进程,解决各种兼容性问题。
社区管理员
  • 跨浏览器开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧