java 生成session 如何在浏览器关闭时清除

需求是区分会话
当用户第一次打开页面请求接口获取到 session
当用户关闭页面
再次打开时希望获取到的是一个新的 session

但是我发现用户关闭浏览器时生成的session不会清除
导致第二次打开再次获取的 session跟第一次是一样的
image.png

获取session的代码方法:
request.getSession().getId()

请问各位大佬们 有没有什么方法可以在浏览器关闭时清掉session 下次打开时重新生成
或者有什么其他方法来区分用户的每一次会话

阅读 2.8k
2 个回答

设置 session 为会话级别即可


ps: 问题评论下的讲让前端清除.... 浏览器都关了前端代码没有办法执行的 图片.png

首先,问题应该是“保存 sessionid 的 cookie 怎么清除”
如果 cookie 的过期时间是 “session”,那么用户退出浏览器,就会清除
如果是osx的话,需要退出才能清除

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题