http 请求头的Cookie中的 JSESSIONID 是什么

Http协议

首先Http协议是无状态的连接方式,即客户端访问服务端,服务端是不会记录客户端访问服务端的状态的。HTTP无状态协议,是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

客户端与服务器进行动态交互的Web应用程序出现之后,HTTP无状态的特性严重阻碍了这些应用程序的实现,毕竟交互是需要承前启后的,简单的购物车程序也要知道用户到底在之前选择了什么商品。于是,两种用于保持HTTP连接状态的技术就应运而生了,一个是Cookie,而另一个则是Session。HTTP本身是一个无状态的连接协议,为了支持客户端与服务器之间的交互,我们就需要通过不同的技术为交互存储状态,而这些不同的技术就是Cookie和Session了。

  1. 协议对于事务处理没有记忆能力

  2. 对同一个url请求没有上下文关系

  3. 每次的请求都是独立的,它的执行情况和结果与前面的请求和之后的请求时无直接关系的,它不会受前面的请求应答情况直接影响,也不会直接影响后面的请求应答情况

  4. 服务器中没有保存客户端的状态,客户端必须每次带上自己的状态去请求服务器(cookie的jsession)

HTTP会话跟踪技术

  1. Cookie(结合session使用):**客户端 **如果没有指定Cookie的时效,那么默认的时效是会话级别(api设置单位为second[秒])

  2. Session:使用 setAttribute(String str,Object obj)方法将对象捆绑到一个会话。**服务端 **tomcat默认session有效期是30分钟(api设置单位为second[秒],.xml文件配置是以分(min)为单位)

  3. URL 重写

  4. 隐藏的表单域

JSESSIONID说明

在这里插入图片描述

这是一个保险措施,因为Session默认是需要Cookie支持的。

但有些客户浏览器是关闭Cookie的这个时候就需要在URL中指定服务器上的session标识。(无痕模式cookie是无法保存的)

http本身是无session的,无法跟踪客户端的信息,换句话说:http协议不管是谁连接自己。

为了实现session,必须有浏览器支持。浏览器可以用cookie存储session,这是最通用的做法。

但是,如果我自己写一个完全符合http协议的浏览器,但是不配合服务器的session要求,那么服务器就无法产生session。

好在现在的浏览器都支持session要求,即使关闭了cookie,浏览器也会向服务器传递sessionid,这个id是存储在浏览器的内存空间中的,不保存在硬盘cookie中。

在http的报文格式里面cookie和session是在同一个包文位置上的如果ie发现包文里面包含cookie/session的信息的话,他会根据安全级别来决定是否保存相关信息,比如,如果安全机制允许使用cookie那么ie将把cookie的信息保存到临时文件里面,每次在请求服务器文件的时候会把收到的session的信息加入到请求的报文里面,这就是session保存信息的原理。

如果安全机制不允许使用cookie的话,虽然ie收到了cookie和session的信息,那么cookie的信息不会被写入临时文件,当ie再次请求服务器文件的时候,也不会把收到的session的信息加入到请求报文里面,服务器就无法知道session的信息了。

流程就是:session->jsessionid->cookid->请求头(RequestHeader)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

five-five

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值