Postman中如何从HTML响应提取authorizationCode并存为集合变量
你已经通过cheerio获取到了script标签内的完整脚本内容,直接使用正则做定向匹配即可精准提取目标值,无需额外解析JS语法。
可直接使用的测试脚本如下:
const $ = cheerio.load(pm.response.text()) const scriptText = $("script").text(); // 匹配var authorizationCode后单引号包裹的取值 const authCodeResult = scriptText.match(/var authorizationCode = '([^']+)'/); // 校验匹配结果后写入集合变量,避免异常值覆盖 if (authCodeResult && authCodeResult[1]) { pm.collectionVariables.set("access_token", authCodeResult[1]); }
实现说明:
- 正则中
([^']+)为捕获组,会抓取var authorizationCode = '字符串之后、第一个闭合单引号之前的所有内容,针对你提供的响应样例,提取结果为360ad5ce-ecfe-4ad4-83d1-9254e89a3ccc - 增加匹配结果校验逻辑,只有成功捕获到目标值时才会写入Postman变量,避免页面结构变动时把undefined、完整脚本文本这类异常内容存入变量
- 如果后续需要同步提取state参数,复用相同逻辑即可,只需将正则匹配规则替换为
/var state = '([^']+)'/
内容的提问来源于stack exchange,提问作者akfas
相关产品推荐
相关产品推荐

