java033 2009-02-10 14:57
浏览 251
已采纳

ie8 rc1,window.open以后,session 丢失

昨天,有客户反映:

登录系统后,立即会出现提示,session超时,请重新登录;

跟踪后,发现,此客户使用的是ie8 rc1 浏览器.别的客户(使用IE6,IE7,FireFox,Maxton浏览器)没有反应此类问题;

于是我在本机升级到ie8 rc1 ,登录正常;

这就奇怪了,敢紧叫几个同事一起升级到ie8 rc1 ,结果,只有一个同事可以正常登录,

其它的都出这样的问题.

调试了一下代码,发现,当登录后,我要实现全屏打开时,使用了JS,,window.open;

会不会是ie8 rc1 中,session机制有变化,window.open以后,是创建了一个新session?

果然,把window.open(url),改成document.location.href=url后,,访问正常...

很不解,如果是session机制问题,,有个别机器为什么可以顺利访问呢?

如果是ie8 rc1的设置问题,经过对比,我和他们的设置基本上是一样的,那应该怎么设置呢?

附网上摘抄的MS工程师的BLOG:
[quote]
http://blog.csdn.net/WinGeek/archive/2009/02/01/3856044.aspx

Session cookie 被广泛用来做用户身份校验。 相比IE7, IE8的Session 管理有很大变化, 这是Web 开发者需要注意的。

IE7中,同一个窗口(IE 进程)共享一个session。

IE8中,所有打开的IE窗口(IE 进程)共享一个session。除非,用户通过菜单 File > New session 打开新窗口,或者使用命令行参数 iexplore.exe -nomerge 来打开IE。 另外,当所有IE窗口被关闭后,session 结束。
[/quote]

看完后,更迷惑了,,那这么说,,这种情况就更不应该出现了...

哪位大哥指点一下..

  • 写回答

1条回答 默认 最新

  • litianyi520 2009-02-23 13:36
    关注

    window open session 丢失不是新鲜事了, 这和浏览器有关系,要是怕丢失 就 用target blank吧 或者做层效果,我觉得最好, 都不用考虑那些破问题 :P

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划