一、背景
http是一个无状态的协议,短连接(http1.1后提供了长连接),在每次请求和响应时都会新建连接和关闭连接,在遇到敏感资源就出现了问题,session就是来解决这个问题的。
二、session
session,会话,是用来保持用户身份,主要解决需要登录的敏感资源访问问题。通过服务器保存用户身份信息实现。
流程:1、生成随机字符串sessionid,保存在tomcat的用户信息数据结构中,sessionid绑定一个用户,一个用户保存多个信息。
2、把sessionid放在响应头,头信息的键值对,键是双方约定好的,值就是sessionid的值。
3、客户端之后的请求都携带sessionid。
4、服务端接收请求,都验证sessionid。
三、cookie
cookie适用的场景就是多少天免登录,它保存在客户端本地文件。
实现:把用户信息保存在客户端本地,域名绑定用户信息的Cookie,之后访问时,浏览器自动从本地抓取该域名的Cookie信息。用户登录成功后,响应头携带set-cookie,勾选免登录(类似的客户端操作),浏览器自动设置cookie到本地,之后每次请求,浏览器自动携带cookie头。
浅谈cookie和session
最新推荐文章于 2024-09-15 19:46:31 发布