会话技术+请求转发+重定向

        会话包括有状态会话和无状态会话。

        有状态会话是指在网络通信过程中,服务器需要记住客户端的状态信息,以便后续的通信能够继续使用这些信息。

        无状态会话是无法持续保存信息,http超文本传输协议中的http属于无状态会话

        如何保存会话?

1.将状态保存在客户端 cookie上

2.将状态保存在服务端 session上

cookie

        cookie是服务器创建的,然后通过响应发送给客户端并保存在浏览器上的一小块信息,它会在浏览器下次发起请求时被携带并发送到服务器上

cookie访问过程

1.编写访问请求url到服务器

2.服务器创建cookie对象,并通过respondse将cookie响应给客户端

3.接受服务端响应的cookie信息,并存储

4.再次向服务端发起访问请求并携带cookie信息

5.从请求中获取cookie信息

session

        session是每一个游览器(客户端)所唯一的,这个是怎么实现的呢?其实,在访问一个网站时,在HTTP请求中往往会携带一个cookie,这个cookie的名字是JSESSIONID,这个JSESSIONID表示的就是session的id,这个是由服务器创建的,并且是唯一的。服务器在使用session时,会根据JSESSIONID来进行不同操作。

session访问过程

1.编写访问请求url到服务器

2.服务端创建session,对应一个jsessionid

3.jsessionid保存到cookie

4.再次向服务端发起访问请求并携带jsessionid

5.获取session信息

当浏览器禁止了cookie的使用,那我们该如何应对?

我们可以使用请求转发和重定向来继续使用session

请求转发是一种服务器行为,当客户端请求到达之后,服务器进行转发。

特点:可以转发至网站内任意资源,可以访问WEB-INF
        一次请求,数据再request域共享
        地址栏不发生改变
        服务端行为

重定向:服务器指导的客户端行为,客户端发出一个请求,被服务器接收处理之后,服务器给客户端一个响应(一个新的地址),当客户端接收到新的地址之后,立马发起第二次请求,服务器接收并响应

特点:客户端行为,访问不了WEB-INF
        两次请求,数据在request域不共享
        可以重定向到任意地址(可以跨域)

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值