iOS面试题:谈一谈网络中的 session 和 cookie?

因为 Http 无状态的特性,如果需要判断是哪个用户,这时就需要 CookieSession

Cookie 存储在客户端,用来记录用户状态,区分用户。一般都是服务端把生成的 Cookie 通过响应返回给客户端,客户端保存。

Session 存储在网络端,需要依赖 Cookie 机制。服务端生成了 Session 后,返回给客户端,客户端 setCookie:sessionID,所以下次请求的时候,客户端把 Cookie 发送给服务端,服务端解析出 SessionID,在服务端根据 SessionID 判断当前的用户。

如何修改 Cookie?

  • 相同 Key 值得新的 Cookie 会覆盖旧的 Cookie.

  • 覆盖规则是 name path 和 domain 等需要与原有的一致

如何删除 Cookie?

  • 相同 Key 值得新的 Cookie 会覆盖旧的 Cookie.

  • 覆盖规则是 name path 和 domain 等需要与原有的一致

  • 设置 Cookieexpires 为过去的一个时间点,或者 maxAge = 0

如何保证 Cookie 的安全?

  • Cookie 进行加密处理
  • 只在 Https 上携带 Cookie
  • 设置 CookiehttpOnly,防止跨站脚本攻击。

更多:iOS面试题合集

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。