前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >到底创建了几个Session

到底创建了几个Session

作者头像
小尘哥
发布2018-08-15 10:58:47
4100
发布2018-08-15 10:58:47
举报
文章被收录于专栏:小尘哥的专栏小尘哥的专栏

问:浏览器访问一个站点,产生一个session,接着进行以下操作:

1、在同一个浏览器新打开一个tab卡,访问同一站点,此时几个session

2、将新打开的tab卡拖拽出来,成为两个浏览器的时候,创建了几个session

3、换一个浏览器,访问同一个站点,此时几个session

4、HttpSession、HttpServletRequest.getSession()、HttpServletRequest.getSession(true)、HttpServletRequest.getSession(false)是不是同一个session?

先看产生的第一个session

1

访问本地的tomcat,将第一次的sessionId存如session,可以看到四个sessionId相同。

新打开tab,比较两个sessionId

2

发现两个tab卡的sessionId也是相同的

拖拽出来之后

3

发现两个sessionId依然相同

换FF再打开

4

终于和之前的不一样了。

总结

5

1、对于同一个浏览器,在不清除cookie、缓存、关闭浏览器的前提下,如果没到失效时间,session都是同一个

2、拖拽出来之后,session依然是同一个

3、换一个浏览器,session改变

4、HttpSession、HttpServletRequest.getSession()、HttpServletRequest.getSession(true)、HttpServletRequest.getSession(false)获取到的是同一个session

题外话

6

session存在于服务端,由于http是无状态的,服务端无法区别请求由哪个客户端发送,最终还是依赖cookie,每次发送请求携带一个JSESSIONID,即服务端获取的sessionId,唯一标识一个客户端请求。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-10-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 陌与尘埃 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档