基础
network
network
  • TCP/IP 网络模型
    • 应用层
      • 域名系统 DNS
      • 超文本传输协议 HTTP
    • 传输层
      • 用户数据报协议 UDP
      • 传输控制协议 TCP
        • TCP 报文段
        • 建立连接(三报文握手)
        • 连接释放(四报文握手)
    • 网络层
      • IPv4 地址
        • 分类的 IP 地址
        • 划分子网
        • 无分类编址 CIDR(构造超网)
      • IP 数据报的格式
      • 地址解析协议 ARP
      • IPv6 地址
    • 网络接口层
      • 数据链路层
        • 点对点协议 PPP
        • CSMA/CD 协议
          • MAC 帧的格式
          • 交换式集线器 (switching hub)
      • 物理层
  • Session 与 Cookie
  • 键入网址到网页显示,期间发生了什么?
  • Linux 系统是如何收发网络包的?
  • HTTP
    • HTTP 常见的状态码
    • HTTP 缓存技术
    • HTTP 常见字段
    • HTTPS
  • Group 1
    • 局域网
    • 网卡
    • 专用地址
    • 端口号
    • 网络安全
      • 数据加密模型
      • 数字签名
      • 鉴别(authentication)
        • 报文鉴别
        • 实体鉴别
      • 密钥分配
Powered by GitBook
On this page

Session 与 Cookie

Session 和 Cookie 是用于在 Web 开发中维护用户状态的两种不同的机制。它们都用于在客户端和服务器之间存储信息,但有一些关键的区别:

  1. 存储位置:

    • Cookie:存储在用户的浏览器中。Cookie 是由服务器发送到用户浏览器,并由浏览器存储。每次用户访问相同的服务器时,浏览器都会将相应的 Cookie 信息发送回服务器。

    • Session:存储在服务器上。Session 数据存储在服务器上,而不是在用户的浏览器中。服务器为每个会话维护一个唯一的标识符,通常存储在 Cookie 中。

  2. 存储方式:

    • Cookie:存储在浏览器中,以键值对的形式。

    • Session:存储在服务器上,通常使用服务器端的缓存或数据库来保存 Session 数据。

  3. 安全性:

    • Cookie:相对不够安全。Cookie 数据存储在用户的浏览器中,可以被用户查看和修改。为了提高安全性,可以使用安全标志和加密来保护 Cookie 数据。

    • Session:相对更安全。由于 Session 数据存储在服务器上,用户无法直接查看或修改它。然而,Session ID 可能会被劫持,因此需要采取额外的安全措施,比如使用 HTTPS 和定期更换 Session ID。

  4. 存储内容:

    • Cookie:用于存储小段文本数据,通常用于识别用户或跟踪用户行为。Cookie 的大小受到限制,通常不超过几 KB。

    • Session:可以存储更复杂的数据,因为它是存储在服务器上的。Session 数据的大小可以相对较大,不受浏览器限制。

  5. 生命周期:

    • Cookie:可以有长期的生命周期,具体取决于设置。可以设置 Cookie 的过期时间,使其在未来的某个时间点失效,也可以设置为会话 Cookie,关闭浏览器后即过期。

    • Session:通常与用户的会话周期相同。当用户关闭浏览器或者长时间不活动时,会话可能会超时并被销毁。

在实际应用中,通常会同时使用 Cookie 和 Session。Cookie 用于在客户端存储少量的标识信息,而 Session 用于在服务器上存储更敏感、更大量的用户状态信息。

Previous物理层Next键入网址到网页显示,期间发生了什么?

Last updated 8 months ago