问题描述
我们开发了一个系统,我使用admin和test两个账号在同一台机器上登录,出现了一个问题。假设我先用admin登录(不退出),接着用test账号登录,结果admin中session保留的信息变成了test的信息。这个问题怎么解决?
解决方案
很正常啊,登陆信息都是保存在cookie里的.然后,第二个账户登陆的时候,由于cookie的域是一样的,自然会覆盖掉之前的哪个账户.很多网站都是这样.正常情况下,一个用户怎么会同时操作两个账号?有这个需求?如果用户真心希望能够登陆两个账号,那么让他们用不同的浏览器就能解决.如果非要你们解决....很难有科学的解决方案.比如把登陆信息都放在页面中的隐藏表单内.但是这样不科学.这个问题,你不要纠结了.直接推回给用户就好了.没这种需求的.
解决方案二:
如果你使用的IE8+的浏览器,可以使用菜单【文件】—>【新建会话】打开一个新的窗口,然后在登录下一个帐号,就不会session共享了。
解决方案三:
这个服务器端好像没有太好的解决方案。在客户端控制吧。 比如测试时用多个浏览器, 比如用 360浏览器 的 小号/无痕 工具。最早之前的ie6打开多个窗口就不共享session,现在ie8、9 都共享session了。
解决方案四:
1、一般浏览器都是 共享的; 即打开不同的窗口 但是还是同一套session2、建议使用不同的浏览器,如firefox+chrome 测试
解决方案五:
这是由于你第二个sessionid把第一个sessionid给覆盖掉了导致的。你可以通过firebug看看sessionid变化的情况。
时间: 2024-07-28 15:19:14