有关CTRL+N生成另一浏览器窗口的问题。

supersonics 2001-06-22 10:22:00
怎样在server端把通过CTRL+N生成的浏览器窗口与原窗口区分开(这两个浏览器公用同一份Session)。
区分开为了使一个浏览器窗口对应一份Session.
...全文
116 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
supersonics 2001-06-27
  • 打赏
  • 举报
回复
try again...
supersonics 2001-06-25
  • 打赏
  • 举报
回复
我该绝望吗?
supersonics 2001-06-23
  • 打赏
  • 举报
回复
sessionid当然是一样的。
因为sessionid是保存在客户端的。
现在问题已经变了:我想是不可能解决的。
新的问题如下:
A&B的定义如上不变。
但是B是由ie->file->new->window。
如何区别A&B。这时连监控CTRL+N的方法也失去了。
当然,目的不是区别A&B,目的是让server知道有B的存在(无论用户提交A/B,都要让server知道有两个client公用同一份Session).
这个问题是不可能解决的!
绝望了...
llkh 2001-06-23
  • 打赏
  • 举报
回复
我刚才试了一下,把这个画面复制了一份,同时进入localhost:8080,打出来的sessionID完全一样,更奇怪的是复制出来的画面的history.length也一样。
llkh 2001-06-23
  • 打赏
  • 举报
回复
这个结论怎么得出来的?逻辑错误
supersonics 2001-06-22
  • 打赏
  • 举报
回复
我试了一下:
所需文件:index.html&test1.jsp&test2.jsp.
其中:index.html含有到test1.jsp和test2.jsp的连接。
test1和test2分别含有一个100000级别的循环。
步骤:
1. 进入index.html,称为A;
2. CRTL+N复制index.html称为B;
3. 点击A的test1.jsp。
4. 进行3的同时,点击B的test2.jsp。
5. 结果A,B分别进入test1.jsp和test2.jsp。
完毕。
以上试验可以说明,在服务器端是知道这两个浏览器的不同的。
否则的话,肯定A,B会进入同一个画面(相当于index.html点击test1.jsp的超连接后,不等“返回”迅速点击test2.jsp)。
evergreen 2001-06-22
  • 打赏
  • 举报
回复
兄弟,这好像没有办法吧?
如果开个新的窗口就会把Session丢掉(或者换调),就没有办法作网站了,除非整个网站都不开新窗口,或者说只要开了新窗口的地方就不需要验证Session
Session是于cookie相关的,客户端通过cookie保存身份,然后传送到服务端去验证,服务端怎么知道客户端是开新窗口还是在原有窗口中浏览?也许一些低版本的浏览器可以做到,开个窗口就把Session扔掉
--想不通的说

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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