在线工具AI 产品汇

工具箱 › 开发 › Cookie 编辑

Cookie 解析与生成

粘 Cookie 头或 Set-Cookie 头即可拆分每条 Cookie 与它的 Path、HttpOnly、SameSite 等属性,可在名=值、Set-Cookie 响应头、document.cookie 赋值、JSON 四种输出之间切换,纯浏览器本地处理。

0Cookie 条数
0带 Secure
0值总长

两种输入怎么区分

带 <code>Set-Cookie:</code> 前缀的行按「一条 Cookie + 属性」解析,<code>Path</code>、<code>HttpOnly</code> 这些会拆出来单独归类;带 <code>Cookie:</code> 前缀或光秃秃一行 <code>名=值; 名=值</code> 的,整行都当请求 Cookie 解析。

所以只粘了 <code>sid=1; Path=/</code> 而没写前缀时,<code>Path=/</code> 会被当成一条名叫 Path 的 Cookie —— 补上 <code>Set-Cookie:</code> 前缀就不会。

四种输出各给谁用

<code>名=值</code> 直接贴进请求头或浏览器控制台;<code>Set-Cookie 头</code> 是响应头写法,属性照原样带回;<code>JS 赋值</code> 生成 document.cookie 语句,属性名转成小写(JS 里不区分大小写)。

<code>JSON</code> 给要写进配置或自动化脚本的场合,属性单独放在 attrs 数组里、保持原有顺序。

值里的引号和 URL 编码

Cookie 值按规范可以带双引号包起来,解析时会去掉外层引号;勾「值做 URL 解码」会把 <code>%20</code>、<code>%E4%B8%AD</code> 这类编码还原,解码失败就保留原文并在提示里计数。

Expires 原样带回,不做时区换算 —— 各家服务器给的本来就是 GMT 字符串,自己改格式反而容易写错。

常见问题

为什么 Path 变成了一个 Cookie?

没写 Set-Cookie: 前缀时,整行按请求 Cookie 拆,Path=/ 就是一段名=值。补上 Set-Cookie: 前缀,它就会被认成属性。

能解析 Cookie 域的自动清理逻辑吗?

不能。SameSite=None 需要的 Secure、Path/Domain 是否匹配当前页这些都要结合具体页面判断,本页只做字符串层面的拆分。

JS 赋值那栏为什么没有 Domain?

有就照原样输出。Domain 只能设在当前域或其父域上,写别的域浏览器会直接忽略,那属于要改服务端响应头的事。