如何在Insomnia中提取响应头Location URL的部分内容作为变量
在Insomnia中提取响应头Location里的工单编号并复用
问题原因
你之前直接提取了Location响应头的完整内容,导致第二个请求URL拼接了整个地址,而不是只需要的工单编号。解决核心是用正则捕获组提取Location中的工单编号部分。
具体操作步骤
- 打开第一个请求(
https://domain-1.com)的设置面板,找到Extract(提取变量)功能 - 创建新的提取变量,命名为
ticketNumber(名称可自定义) - 按以下配置提取规则:
- Function to perform:
Response - Attribute:
Header - Request: 选择第一个请求(即返回Location头的那个请求)
- Header name:
Location - Filter栏填写正则表达式:
\/tickets\/([A-Z0-9-]+)$,然后勾选Capture group 1(这个捕获组会提取/tickets/后面的工单编号) - Trigger behaviour:
when expired - Max age:
60s
- Function to perform:
- 编辑第二个请求的URL,改为
https://domain-1.com/{ticketNumber} - 保存配置后,实时预览会显示正确的
https://domain-1.com/ABC-1234,实际请求也会使用这个URL
补充说明
如果工单编号的格式有变化,比如包含小写字母,可把正则调整为\/tickets\/([a-zA-Z0-9-]+)$,确保能匹配到目标内容。
内容的提问来源于stack exchange,提问作者Kelson Batista
相关产品推荐
相关产品推荐

