乐闻世界logo
搜索文章和话题

Session Cookie 和 Persistent Cookie 有什么区别?

3月6日 21:33

Session Cookie 和 Persistent Cookie 的主要区别在于过期时间:

Session Cookie(会话 Cookie)

  • 不设置过期时间或过期时间设为 0
  • 存储在浏览器内存中
  • 当浏览器关闭时自动删除
  • 用于临时存储会话信息
  • 示例:Set-Cookie: sessionId=abc123

Persistent Cookie(持久 Cookie)

  • 设置明确的过期时间(Expires)或最大生存时间(Max-Age)
  • 存储在浏览器硬盘上
  • 即使浏览器关闭也会保留
  • 用于长期保存用户偏好或登录状态
  • 示例:Set-Cookie: userId=456; Expires=Wed, 09 Jun 2026 10:18:14 GMT

使用场景对比:

  • Session Cookie:购物车临时商品、表单临时数据
  • Persistent Cookie:记住我功能、用户偏好设置、追踪用户行为

安全考虑:

  • 敏感信息应使用 Session Cookie
  • Persistent Cookie 应设置合理的过期时间
  • 两种 Cookie 都应考虑使用 Secure 和 HttpOnly 标志
标签:Cookie