Set-Cookie 与 Cookie 标头解析器

在你的浏览器中,粘贴一个原始的 Set-Cookie 或 Cookie 标头,即可看到每个属性、过期时间和安全警告被逐一拆解出来。

Set-Cookie 解析器完全在你的浏览器中运行。cookie 标头、值以及它们包含的任何令牌都在你的设备上解析,绝不会上传到 ArrayKit。

打开 HAR 查看器

关于 Set-Cookie 解析器

Set-Cookie 解析器会接收一个原始的 Set-Cookie 响应标头——或一整叠这样的标头——并把每个 cookie 拆解成一个可读的表格:名称、经 URL 解码的值、Domain、Path、带友好相对时间的 Expires、Max-Age,以及 Secure、HttpOnly、SameSite、Priority 和 Partitioned 标志。它会标记那些悄悄让 cookie 失效的错误,例如没有 Secure 的 SameSite=None、一个已经过期的日期,或一个违反其规则的 __Host- 前缀,并告诉你每个 cookie 是会话型还是持久型。改为粘贴一个 Cookie 请求标头,它就会列出正在发送的每一个名称和值。一切都在你的浏览器本地解析,因此你检查的标头绝不会离开你的设备。

功能特性

如何使用 Set-Cookie 解析器

  1. 从你浏览器的网络面板或一个服务器响应中复制一个 Set-Cookie 标头
  2. 把它粘贴到框中——如果你有多条,请每行一条地添加更多 Set-Cookie 行
  3. 查看逐个 cookie 的表格,了解属性、过期时间和任何被高亮的警告
  4. 切换到 Cookie 标头模式,改为检查一个请求的 Cookie: 行

示例

输入

Set-Cookie: track=1; Domain=.example.com; SameSite=None

输出

track = 1 | Domain=.example.com | SameSite=None | Session
⚠ SameSite=None requires the Secure attribute — browsers will reject this cookie.

一个没有 Secure 的 SameSite=None cookie 会在你粘贴的那一刻就被标记出来。

常见错误与故障排除

常见问题

Set-Cookie 解析器为每个 cookie 显示什么?
对于每个 Set-Cookie 标头,它会列出名称、经 URL 解码的值,以及它找到的每一个属性——Domain、Path、Expires(带相对时间)、Max-Age、Secure、HttpOnly、SameSite、Priority 和 Partitioned——再加上针对任何看起来有问题之处的警告。
为什么 SameSite=None 需要 Secure 属性?
现代浏览器只有在一个跨站 cookie(SameSite=None)同时被标记为 Secure 时才接受它,因此它只能通过 HTTPS 传输。如果缺少 Secure,浏览器会拒绝该 cookie,解析器会用一个警告标记这种组合。
cookie 上的 Max-Age 和 Expires 有什么区别?
Expires 设定一个绝对日期;Max-Age 设定从收到 cookie 那一刻起、以秒计的存活时长。当两者都存在时,Max-Age 优先,因此工具会把 Max-Age 相对当前时间求解,并注明它优先于 Expires。
__Host- 和 __Secure- 这两个 cookie 名称前缀是什么意思?
它们是浏览器强制执行的安全前缀。一个 __Secure- cookie 必须设置 Secure;一个 __Host- cookie 必须设置 Secure、省略 Domain 并使用 Path=/。解析器会检查这些规则,并在一个 cookie 的名称所承诺的保证与其属性不符时发出警告。
这个工具也能解析 Cookie 请求标头吗?
可以。切换到 Cookie 标头模式,粘贴一个 Cookie: 行(或一个裸的「a=1; b=2」字符串),即可得到一个表格,列出该请求发送的每一个 cookie 名称和值,每一个都经 URL 解码且可复制。
在这里,会话型 cookie 和持久型 cookie 有什么区别?
一个既没有 Expires 也没有 Max-Age 的 cookie 是会话型 cookie——它在浏览器关闭时被清除。任何带有 Expires 日期或 Max-Age 的都是持久型。解析器会把每个 cookie 标注为「会话型」或「持久型」,让你能一眼分辨。

相关工具

全部 ArrayKit 工具