我遇到了通过多个浏览器选项卡处理多个 Java Web 应用程序登录的问题。场景是这样的:
步骤: 1. 用户 A 通过第一个浏览器选项卡使用用户 ID“abc”首次登录应用程序 2. 用户 A 通过第二个浏览器选项卡使用用户 ID“cde”第二次登录应用程序 3. 此时,我可以使 session 无效并将用户重定向回登录页面。
HttpSession session = request.getSession(false); session.invalidate();
- 但是,如果用户 A 使用用户 ID“cde”通过第二个浏览器选项卡执行第三次登录。他仍然能够使用第一个浏览器选项卡继续执行交易。
我想踢/阻止用户通过第一个浏览器选项卡进行任何 Activity 。我怎样才能实现这个目标?
最佳答案
当您尝试第三次登录时,浏览器选项卡 1 似乎正在发送 sessionId。如果您从浏览器 cookie 中清除该 sessionId 那么它将解决您的问题。
关于java web应用程序在第二次登录后销毁第一次登录 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18766510/