如何从 Postman 中的响应正文设置环境变量,其中相关关键字用连字符连接

Ahm*_*ury 5 api postman

我试图通过从 api 的响应正文捕获节点来设置环境变量,其中该节点包含两个连字符的单词。

我的脚本是 - postman.setEnvironmentVariable("Token", jsonData.access-token);- 这不断返回ReferenceError: token is not Defined

响应正文中的节点是 -{"access-token": "<token>"}

我尝试过使用此脚本 - postman.setEnvironmentVariable("Token", jsonData.access/-/token/);- 此脚本将关键字“Token”设置为环境键,但不会从响应正文中捕获实际令牌的值。

有谁知道这个问题的解决方案?

小智 4

ReferenceError:令牌未定义

这表明 token 应该作为一个不同的变量,但无法找到。

postman.setEnvironmentVariable("Token", jsonData.access-token);

上述语句的 JavaScript 语法无效,因为变量/对象属性名称中不能包含连字符。有关有效名称的更多信息,请访问: https: //mathiasbynens.be/notes/javascript-identifiers

这可以通过使用方括号表示法来修复,如下所示:

pm.environment.set("Token", jsonData["access-token"]);
Run Code Online (Sandbox Code Playgroud)

请注意,该postman.*函数系列已被弃用,并已被其pm.*等效函数所取代。更多详细信息可以在这里找到: https: //www.getpostman.com/docs/v6/postman/scripts/postman_sandbox_api_reference