📜  HTTP 标头 |设置Cookie

📅  最后修改于: 2022-05-13 01:56:36.510000             🧑  作者: Mango

HTTP 标头 |设置Cookie

HTTP 标头 Set-Cookie是一个响应标头,用于将 cookie 从服务器发送到用户代理。因此用户代理可以稍后将它们发送回服务器,以便服务器可以检测到用户。

句法:

Set-Cookie: = | Expires= 
               | Max-Age= | Domain=
               | Path= | SameSite=Strict|Lax|none

注意:也可以使用多个指令。

指令:

  • =: cookie 名称必须避免这个字符() @, ; :\” / []? = { } 加上控制字符、空格和制表符。它可以是任何 US-ASCII字符。
  • Expires=这是一个可选指令,包含 cookie 的到期日期。
  • Max-Age=包含秒数格式的生命周期,零或负值会使cookie立即过期。
  • Domain=此指令定义将发送 cookie 的主机。它是一个可选指令。
  • Path=该指令定义了一个必须存在于请求的 URL 中的路径,否则浏览器无法发送 cookie 标头。
  • SameSite=Strict|Lax|none:该指令提供了一些针对跨站点请求伪造攻击的保护。

例子:

  • 这种类型的 cookie 在用户关闭系统时被删除,这种类型的 cookie 称为会话 cookie。
    Set-Cookie: sessionId=38afes7a8
  • 永久 cookie 在某个特定日期过期
    set-cookie: 1P_JAR=2019-10-24-18; expires=…in=.google.com; SameSite=none

要检查此 Set-Cookie 的运行情况,请转到 Inspect Element -> Network检查 Set-Cookie 的响应标头。

支持的浏览器:兼容HTTP header Set-Cookie的浏览器如下:

  • 谷歌浏览器
  • IE浏览器
  • 火狐
  • 苹果浏览器
  • 歌剧