2023年11月25日发(作者:)
⾯试常考--cookie和session的区别
浅谈
Cookie*
⼀.什么是Cookie
HTTP协议本⾝是⽆状态的,即服务器⽆法判断⽤户⾝份。Cookie实际上是⼀⼩段⽂本信息(key-value格式)。客户端向服务端发起请
求,如果服务器需要记录该⽤户状态,就使⽤response向客户端浏览器颁发⼀个Cookie,客户端浏览器会把Cookie保存起来,当浏览器
再请求该⽹站时,浏览器把请求的⽹站连同该Cookie⼀起提交给服务器,服务器检查该Cookie,以此来辨认⽤户状态。
类似于,我们去银⾏办理储蓄业务,第⼀次给你办了张银⾏卡,⾥⾯存放了⾝份证、密码、⼿机等个⼈
信息,当你下次再来的时候,银⾏机
器能识别你的卡,从⽽能帮你办理业务。
cookie与session的区别:
1.存储的位置不同:cookie数据保存在客户端,session数据保存在服务器端。session存储的数据⽐较安全。
服务器也可以通过URL重写的⽅式来传递SessionID的值,因此不是完全依赖Cookie。如果客户端Cookie禁⽤,则服务器可以⾃动通过重
写URL的⽅式来保存Session的值,并且这个过程对程序员透明。
可以试⼀下,即使不写Cookie,在使⽤kies();取出的Cookie数组的长度也是1,⽽这个Cookie的名字就是
JSESSIONID,还有⼀个很长的⼆进制的字符串,是SessionID的值。
2.存储的数据类型不同:两者都是key-value结构,但针对value的类型是有差异的。Cookie:value只能是字符串类型,session:value是
发布评论