Postman怎么在脚本里读取Cookie_PostmanCookie脚本访问教程

老丽姑娘_2237

老丽姑娘_2237

2026-11-05

408人浏览

原创

Postman脚本中需用pm.response.headers.get("Set-Cookie")手动解析响应头获取本次Cookie,因pm.cookies.get()仅读已持久化的上一次Cookie;多个Set-Cookie需用all().filter遍历;自动管理优先于脚本拼接。

postman怎么在脚本里读取cookie_postmancookie脚本访问教程

Postman脚本里怎么拿到响应里的 Set-Cookie

Postman 不会自动把 Set-Cookie 头暴露给脚本,也不能直接用 pm.cookies.get() 读到刚返回的、还没存入 Cookie 管理器的值。你看到的 pm.cookies.get("key") 只能读「已持久化」的 Cookie(即上一次请求后被 Postman 自动存下来的),不是本次响应刚发来的。

所以真正要读本次响应头里的 Set-Cookie,得手动解析响应头:

  • 用 pm.response.headers.get("Set-Cookie") 拿原始字符串(注意:可能有多个,用逗号分隔)
  • 如果只有一个 Set-Cookie,可直接用 split(";")[0].trim() 提取 name=value 部分
  • 若需精确提取某个字段(比如 sessionid),推荐用正则:pm.response.headers.get("Set-Cookie")?.match(/sessionid=([^;]+)/)?.[1]
  • 注意:某些服务会发多个 Set-Cookie 头(HTTP/2 常见),此时 get() 只返回第一个;要用 pm.response.headers.all().filter(h => h.key === "Set-Cookie") 遍历全部

pm.cookies.get() 为什么总是 undefined

这不是 Bug,是设计行为:Postman 的 pm.cookies 接口只对接内置 Cookie 管理器,而该管理器更新发生在「请求结束、进入历史记录之后」,脚本执行时(包括 Tests 和 Pre-request Script)它还来不及写入。

常见误操作:

  • 在当前请求的 Tests 里调 pm.cookies.get("token") —— 此时 token 还没存进去,一定返回 undefined
  • 想跨请求复用 Cookie 却没开「Automatically persist cookies」开关(Settings → General → ✅ Automatically persist cookies)
  • 用了 pm.cookies.set() 但没配 domain/path,导致后续请求不携带(set() 是写入管理器,但匹配规则不对就等于白设)

如何让下个请求带上本次响应的 Cookie

最稳的方式不是靠脚本,而是打开 Postman 的自动 Cookie 管理:

  • 确保 Collection 或 Request 级别启用了 cookie jar(右上角 Cookies 按钮点开,确认显示「Enabled」)
  • Settings → General → ✅ Automatically persist cookies(必须开,否则只存当前 session)
  • 发完带 Set-Cookie 的请求后,立刻在下一个请求的 Headers 里删掉手动写的 Cookie 头——让 Postman 自动注入
  • 如果必须脚本控制(比如要拼接多个 Cookie 字段),可在 Pre-request Script 里用:pm.request.headers.add({key: "Cookie", value: `sessionid=${sessionId}; csrftoken=${csrf}`}),但要注意覆盖默认行为

手动拼 Cookie 头容易漏 HttpOnly 或路径限制,优先走自动机制。

NotebookLM CLI Cookies
NotebookLM CLI Cookies

使用 nlm CLI 检索并回答已上传至 NotebookLM 的文档问题。适用于用户需要查找信息、总结来源或查询特定笔记本时。

下载

Cookie 值含特殊字符(比如空格、逗号、引号)怎么安全提取

Set-Cookie 值本身不编码,但实际传输中常被双引号包裹,且 value 里可能含空格或分号。直接 split(";") 会断错。

稳妥做法是用正则配合非贪婪匹配:

const setCookie = pm.response.headers.get("Set-Cookie");
const tokenMatch = setCookie && setCookie.match(/XSRF-TOKEN="?([^";]+)"?/);
const token = tokenMatch?.[1];

关键点:

  • 用 "?([^";]+)"? 匹配可选引号包裹的值,避免被分号截断
  • 不要依赖 pm.cookies.jar().get() 在 Tests 里查——它异步,且返回 Promise,不能直接赋值
  • 如果服务用 SameSite=Lax / Strict,Postman(作为调试工具)不受限,但脚本里模拟浏览器行为时要注意这个差异

Cookie 的 domain/path/expires 规则不会被脚本读取,pm.cookies 接口也不暴露这些元信息——真要验证,只能自己 parse Set-Cookie 字符串。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
软件测试常用工具
软件测试常用工具

软件测试常用工具有Selenium、JUnit、Appium、JMeter、LoadRunner、Postman、TestNG、LoadUI、SoapUI、Cucumber和Robot Framework等等。测试人员可以根据具体的测试需求和技术栈选择适合的工具,提高测试效率和准确性 。

2023.10.13

5050

8

cookie
cookie

Cookie 是一种在用户计算机上存储小型文本文件的技术,用于在用户与网站进行交互时收集和存储有关用户的信息。当用户访问一个网站时,网站会将一个包含特定信息的 Cookie 文件发送到用户的浏览器,浏览器会将该 Cookie 存储在用户的计算机上。之后,当用户再次访问该网站时,浏览器会向服务器发送 Cookie,服务器可以根据 Cookie 中的信息来识别用户、跟踪用户行为等。

2023.06.30

12599

10

document.cookie获取不到怎么解决
document.cookie获取不到怎么解决

document.cookie获取不到的解决办法:1、浏览器的隐私设置;2、Same-origin policy;3、HTTPOnly Cookie;4、JavaScript代码错误;5、Cookie不存在或过期等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.11.23

1286

5

阻止所有cookie什么意思
阻止所有cookie什么意思

阻止所有cookie意味着在浏览器中禁止接受和存储网站发送的cookie。阻止所有cookie可能会影响许多网站的使用体验,因为许多网站使用cookie来提供个性化服务、存储用户信息或跟踪用户行为。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.02.23

864

5

cookie与session的区别
cookie与session的区别

本专题整合了cookie与session的区别和使用方法等相关内容,阅读专题下面的文章了解更详细的内容。

2025.08.19

1946

14

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

0

15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Apipost从入门到精通
Apipost从入门到精通

共31课时 | 3.5万人学习

apipost极速入门
apipost极速入门

共6课时 | 0.6万人学习