1.session 与 cookie 有什么区别?
- 存储位置不同:session 存储于服务器端;cookie 存储在浏览器端。
- 安全性不同:cookie 安全性一般,在浏览器存储,可以被伪造和修改。
- 容量和个数限制:cookie有容量限制,每个站点下的cookie也有个数限制。
- 存储的多样性:session 可以存储在Redis中、数据库中、应用程序中、而cookie只能存储在浏览器中。
2.session工作原理?
session的工作原理是客户端登录完成之后,服务器会创建对应的session,session创建完之后,会把session的id发送给客户端,客户端存储到浏览器中。这样客户端每次访问服务器时,都会带着sessionid,服务器拿到sessionid之后,在内存找到与之对应的session这样就可以正常工作了。
3.如果客户端禁止cookie ,session还能用吗?
可以用,session只是依赖 cookie 存储 sessionid,如果cookie 被禁用了,可以使用url中添加 sessionid 的方式保证session 能正常使用。