session是web在服务器中保存用户状态的一种方式。服务端维护session的两种方式:
1 在浏览器支持cookie的情况下,cookie保存sessionid。当程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个客户端的请求里是否已包含了一个session标识- 称为session id,如果已包含一个session id则说明以前已经为此客户端创建过session,服务器就按照session id把这个session检索出来使用(如果检索不到,可能会新建一个),如果客户端请求不包含session id,则为此客户端创建一个session并且生成一个与此session相关联的session id,session id的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串,这个session id将被在本次响应中返回给客户端保存。 保存这个session id的方式可以采用cookie,这样在交互过程中浏览器可以自动的按照规则把这个标识发挥给服务器。一般这个cookie的名字都是类似于SEEESIONID
2 服务端考虑到如果客户端浏览器不支持cookie,那么采取了一种叫做url rewrite的技术,这种方式体现在,用户在请求服务端时,会在用户请求的url后边加入;jsessionid=XXXXXXX,这样的参数,效果与存入cookie一样,还是通过客户端记录sessionid编号来维护客户端状态。

HTTP session的原理相关推荐

  1. Cookie和Session的作用,区别和各自的应用范围,Session工作原理

    Cookie和Session的作用与区别 Session用于保存每个用户的专用信息. 每个客户端用户访问时,服务器都为每个用户分配一个唯一的会话ID(Session ID) . 她的生存期是用户持续请 ...

  2. 修改数据包欺骗服务器,Fiddler协议捕获编辑工具与Session欺骗原理详解

    今天Kitty主要与大家分享Fiddler抓包工具与协议捕获编辑工具来与大家讲解Session欺骗原理过程,咱们主要通过Fiddller协议捕获工具来对比HTTPWatch两款工具之间的差别,最主要的 ...

  3. COOKIE和Session的原理及异同

    COOKIE和Session的原理及异同 1. cookie的创建和读取 cookie是客户端技术,服务器把每个用户的数据以cookie的形式写给用户各自的浏览器.当用户使用浏览器再去访问服务器中的w ...

  4. 服务器端会话技术Session|| Session的原理||Session的细节||session的钝化session的活化||session的特点||session与Cookie的区别

    Session 1. 概念:服务器端会话技术,在一次会话的多次请求间共享数据,将数据保存在服务器端的对象中.HttpSession 2. 快速入门:     1. 获取HttpSession对象:   ...

  5. 从@EnableRedisHttpSession谈谈Spring Session实现原理

    一.EnableRedisHttpSession使用 添加依赖 <!-- spring session的依赖 --> <dependency><groupId>or ...

  6. asp.net中session的原理及应用

    Session简介丶特性 1.Session是一种Web会话中的常用状态之一. 2.Session提供了一种把信息保存在服务器内存中的方式.他能储存任何数据类型,包含自定义对象. 3.每个客户端的Se ...

  7. 理解Session实现原理及安全运用

    ##实现原理## java的web容器都实现了session机制,实现的逻辑思想都是一致的,但是具体方案可能会存在一定差异,这里我以tomcat容器为例,探讨下session实现的机制. 下图是tom ...

  8. Session的原理,大型网站中Session方面应注意什么?

    一.Session和Cookie的区别 Session是在服务器端保持会话数据的一种方法(通常用于pc端网站保持登录状态,手机端通常会使用token方式实现),存储在服务端. Cookie是在客户端保 ...

  9. php session实现原理

    SESSION的实现中采用COOKIE技术,SESSION会在客户端保存一个包含session_id(SESSION编号)的COOKIE: 在服务器端保存其他session变量,比如session_n ...

  10. 面试官:请你说一说Http Session的原理及应用?

    选自于:http://www.2cto.com/kf/201206/135471.html 一.术语session 在我的经验里,session这个词被滥用的程度大概仅次于transaction,更加 ...

最新文章

  1. Redis环境配置(核心配置选项)
  2. 【重磅】杨强,陈云霁团队提名2020年度国家科学技术奖!!!
  3. 几乎死循环的存储过程
  4. Raspberry Pi 软件源
  5. p1605迷宫(DFS应该注意的问题)
  6. 2015-10-21 C#1
  7. selenium抓取_使用Selenium的网络抓取电子商务网站
  8. jQuery Mobile高手必备的十大技巧和代码片段
  9. iis mysql_Windows10本地搭建IIS+PHP+MYSQL+phpMyAdmin运行环境图文教程(也可用于服务器)...
  10. Vue框架引入JS库的正确姿势
  11. Linux -chattr -隐藏权限(附加权限)
  12. 搭建国外海外多语言一元云购软件夺宝购商城网站
  13. 从JUnit4迁移到JUnit5:重要的区别和好处
  14. c 语言全局变量的声明及用法,《c语言全局变量的用法》
  15. 通过GPU服务器运行Carla
  16. CNFs/CNTs复合薄膜-供应高储能效率铁电聚合物基电介质/ 三硒化二铟In2Se3/ 硒化铟(InSe和In2Se3)纳米/Cu(In,Ga)Se_2和Cu_2ZnSnSe_4薄膜定制
  17. axios库读不到cookie_axios客户端无法存储cookie
  18. bt协议详解 基础篇(上)
  19. RISC-V 指令格式
  20. 准备你的应用(Android免安装应用)

热门文章

  1. 智能时代 什么样的家庭安防系统更靠谱?
  2. Rancher Managed Network实践
  3. Jquery-easyUI-datagrid参数之 queryParams
  4. Scala 深入浅出实战经典 第91讲:Akka第一个案例动手实战架构设计
  5. Get Intellisense for .axml files in Visual Studio
  6. Centos 6.3中安装KVM
  7. 【其他】使win7尽量少占用C盘空间
  8. 6.Swoole WebSocket
  9. 5. soapui 测试
  10. 21. 投票(poll)