关于session,之前只是在用,从没考虑到底怎么生成的

今天有空我做了个实验,把监控了一下访问某网站第一二次的请求响应详细信息,终于搞明白了,好了,开始放图

 这里发起一个请求,然后我们看下第一次请求的详细信息

 那么,我们开始第二次请求,第二次请求就和正常情况一样了


总结:

session生成大概是,首先你发个请求去服务端,如果你的cookie里面有他之前写的session(叫什么都ok,jsessionid或者其他都行,取决于容器的实现),那么直接读取容器内存该sessionid对应的信息

如果是第一次请求,分2种情况:

1,如果服务端调用获取或设置session的方法,但是传过来的cookie里面没有(根本没cookie可传过去),那么自动生成一个session,并在响应头里面加上Set-Cookie,向浏览器申请写入cookie

2,如果服务端没有调用获取或设置session的方法,那么就不会生成并下发session,应该是为了节省网络以及服务器资源。

最新文章

  1. gc roots 垃圾回收
  2. yourphp超出20记录自动删除
  3. android 入门-Activity及 字体
  4. 读源码之RESideMenu
  5. lnmp常见问题
  6. linux设备驱动归纳总结(八):4.总线热插拔【转】
  7. [Tomcat] Tomcat远程调试
  8. ubuntu命令chmod755
  9. ios 将Log日志重定向输出到文件中保存
  10. w3school之HTML学习笔记
  11. php new self 详解(转)
  12. 基于jmeter,jenkins,ANT接口,性能测试框架
  13. 2017-12-15python全栈9期第二天第四节之格式化输出%s和用户交互个人简历模板
  14. go学习资源
  15. cf827D Best Edge Weight (kruskal+倍增lca+并查集)
  16. Android 音视频深入 五 完美的录视频(附源码下载)
  17. 如何修改word文档中每行字符的最大默认值和每页最大行数默认值
  18. C借函数指针构造映射
  19. synchronized和lock
  20. datacolumn 表达式 除数为0

热门文章

  1. springboot中spring.profiles.include的妙用
  2. Ubuntu 保存文件时报E212
  3. python 访问列表中的值
  4. Redis配置文件中bind参数
  5. 4-EM算法原理及利用EM求解GMM参数过程
  6. vue中改变数组或对象,页面没做出对应的渲染
  7. PHP依赖管理工具Composer入门
  8. DB 分库分表(3):关于使用框架还是自主开发以及 sharding 实现层面的考量
  9. (十七)C语言之变量
  10. 安装vncserver, vncviewer--远程桌面