javascript - 忽略 Javascript 中的连字符 (Postman)

标签 javascript json api variables postman

使用 Postman 构建 RestAPI。

我有一些 JSON 数据:

{
    "progress-update": {
        "@type": "parallel-progress",
        "job": {
            "@href": "/api/space/job-management/jobs/4691268"
        },
        "taskId": 4691268,
        "jobName": "Compare Config-4691268",
        "state": "DONE",
        "status": "SUCCESS",
        "percentage": 100,
        "data": "<![CDATA[Total requests: 3<br>InSync count : 3<br>OutOfSync count : 0<br>]]>",
        "subTask": [
            {

我想将“状态”值提取到一个环境变量中,然后我可以使用该变量来确定是继续处理下一个请求还是等到状态完成。

我遇到的问题是“progress-update”:其中有一个连字符,导致我的脚本无法识别它。

var jsonData = JSON.parse(responseBody);
pm.environment.set("JobStatus", jsonData.progress-update.state);

postman 返回以下错误:

There was an error in evaluating the test script: ReferenceError: update is not defined

最佳答案

您应该能够使用以下方式访问 JSON 数据

var jsonData = JSON.parse(responseBody);
pm.environment.set("JobStatus", jsonData['progress-update'].state);

使用对象括号表示法

关于javascript - 忽略 Javascript 中的连字符 (Postman),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58893273/

相关文章:

javascript - 使用 cookie 启用 4 位密码自动填充

javascript - ReactJS 区分来自多个组件的点击。

javascript - 将 JSON 发送到服务器并返回 JSON,无需 JQuery

JavaScript 对象和通过对话框持久化

c++ - Ubuntu中如何通过语音命令生成键盘、鼠标事件

php - 如何从 Flickr 检索所有公共(public)地理标记照片?

javascript - 将 AngularJS、BackboneJS 与以组件为中心的框架(例如 ExtJS、YUI)相结合

javascript - 一项一项获取json项

javascript - (PERCY) 警告 : skipping visual tests. 未提供 PERCY_TOKEN

java - YouTube JAVA API 中的错误 OAuth 2.0