Session为什么要有一个sessionid,不要sessionid不好嘛
Sessionid为什么要存储在cookie中,自己用自己的不好嘛。
sessionid是一个唯一的标识,sessionid找到存储在服务器的session。
如果没有sessionid会发生什么事情
session他不知道是谁创建的,一个创建后其他人都可以读,一个人修改后其他人看到的都是被修改过的
如果没有sessionid,session变成公共的,而不是每个客户端都不一样
Application就是没有sessionid的session,公共的,不依赖于客户端也就是不依赖cookie
存储位置 共有/私有
Cookie: 客户端 私有
Session 服务器 私有
Application 服务器 公共的
SeesionId的作用:就是为了区分用户
ApplicationId:不需要区分用户,就是公共的,Application设计的目的就是存储公共数据
SessionId存储在Cookie中的
Session仓库就类似一个银行,你去存钱你会有个唯一的卡号或者存折号,你有了一个卡号去取得时候才不会取到别人的钱
Sessionid是服务器生成的,会通过response传给客户端,然后客户端把sessonid存储在存储中,下一次才能通过sessionid找到它自己的session
为什么cookie禁用掉,session就不能获取值了
因为cookie禁用掉之后,sessionid没有了,就相当于你掉了银行卡或者你的身份信息取不到钱
你去超市存东西会生成一个条码,你可以使用条码扫描开门,条码掉了你是不是开不到门。条码是装东西生成的,只是保存在你这里,通过条码可以确认你的身份,确认东西是你的。
所以:有一种攻击手段,叫session劫持。
欢迎加群讨论技术,群:677373950(满了,可以加,但通过不了),2群:656732739