因为 Http
无状态的特性,如果需要判断是哪个用户,这时就需要 Cookie
和 Session
。
Cookie
存储在客户端,用来记录用户状态,区分用户。一般都是服务端把生成的 Cookie
通过响应返回给客户端,客户端保存。
Session
存储在网络端,需要依赖 Cookie
机制。服务端生成了 Session
后,返回给客户端,客户端 setCookie:sessionID
,所以下次请求的时候,客户端把 Cookie
发送给服务端,服务端解析出 SessionID
,在服务端根据 SessionID
判断当前的用户。
如何修改 Cookie
?
相同
Key
值得新的Cookie
会覆盖旧的Cookie
.覆盖规则是 name path 和 domain 等需要与原有的一致
如何删除 Cookie
?
相同
Key
值得新的Cookie
会覆盖旧的Cookie
.覆盖规则是 name path 和 domain 等需要与原有的一致
设置
Cookie
的expires
为过去的一个时间点,或者maxAge = 0
如何保证 Cookie
的安全?
- 对
Cookie
进行加密处理 - 只在
Https
上携带Cookie
。 - 设置
Cookie
为httpOnly
,防止跨站脚本攻击。
更多:iOS面试题合集