Insomnia支持自动Cookie存储、手动导入导出、环境专属变量、单请求禁用及Pre-request脚本动态设置五种Cookie管理方式。

一、启用并查看自动Cookie存储
Insomnia在发送HTTP请求时默认启用自动Cookie捕获与存储功能,所有Set-Cookie响应头中的Cookie会被自动解析并持久化到当前环境的Cookie Jar中,后续请求将自动携带匹配域名与路径的有效Cookie。
1、打开Insomnia,进入任意已创建的请求编辑界面。
2、点击右上角Cookies按钮(位于Send按钮右侧,图标为小饼干)。
3、在弹出的Cookie管理面板中,确认Enable automatic cookie storage开关处于开启状态。
4、发送一次含登录逻辑的POST请求(如/login),观察响应头中是否包含Set-Cookie字段。
5、再次点击Cookies按钮,查看列表中是否已新增对应domain下的会话Cookie条目。
二、手动导入导出Cookie文件
当需要在团队间同步会话、复现生产环境问题或迁移测试数据时,可直接导入标准cookies.txt格式文件,或导出当前环境Cookie用于本地备份。
1、点击Cookies面板右上角⋮(更多)按钮。
2、选择Import cookies from file,选取符合Netscape格式的cookies.txt文件。
3、或选择Export cookies to file,保存为本地cookies.txt,内容按行包含domain、flag、path、secure、expiration、name、value七列。
4、导入后,Insomnia会自动校验Domain和Path匹配性,并仅激活未过期的Cookie条目。
三、配置环境专属Cookie变量
针对开发、测试、预发等多环境场景,可通过环境变量注入动态Cookie值,避免手动切换,确保请求头精准匹配目标环境的会话状态。
1、进入左侧面板的Environments,选择目标环境(如“staging”)。
2、在变量列表中新增一行,Key填写auth_cookie,Value填写完整Cookie字符串,例如:session_id=abc123; Domain=staging.example.com; Path=/; HttpOnly。
3、返回请求编辑页,在Headers区域添加键值对:Cookie → {{auth_cookie}}。
4、切换不同环境时,该Header将自动替换为对应环境定义的Cookie字符串。
四、禁用特定请求的Cookie自动附加
某些调试场景(如验证无会话访问行为、测试CSRF防护机制)需强制剥离Cookie头,此时可对单个请求关闭自动Cookie注入,而不影响全局设置。
1、选中目标请求,在右侧面板切换至Request Settings标签页。
2、向下滚动至Cookie Handling区域。
3、取消勾选Send cookies with this request选项。
4、即使当前环境已存储有效Cookie,该请求发出时Header中将不包含Cookie字段。
五、通过Pre-request Script动态设置Cookie
对于需运行时生成签名Token、时间戳或加密值的复杂认证Cookie,可利用Pre-request Script在每次发送前动态构造并写入Cookie Jar。
1、在请求编辑页底部切换至Pre-request Script标签页。
2、输入JavaScript代码,调用Insomnia内置Cookie API:
const{ setCookie } =require("@useinsomnia/plugins");const now =new Date();const expires =new Date(now.getTime() +60*60*1000);setCookie("https://api.example.com", { name:"auth_token", value:"sig_" +Math.random().toString(36).substr(2, 9), domain:"example.com", path:"/", expires: expires, httpOnly:false, secure:true});
3、保存脚本后,每次点击Send前该脚本自动执行,向目标域名写入新Cookie。
4、可在Cookies面板中实时验证该动态Cookie是否已成功注入。












