如何在邮递员测试脚本中解析JSON

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在邮递员测试脚本中解析JSON相关的知识,希望对你有一定的参考价值。

我正在从一个API调用到另一个API运行一系列集合。我想将响应主体从API调用1拉到API调用2,以便它可以将数据发布到我的应用程序中。

我创建了环境变量,并在测试选项卡中创建了一个脚本来设置变量,但是当我运行脚本时,得到以下响应:

SyntaxError:意外令牌[

我的测试脚本是:

bodyData = JSON.parse(responseBody)

value = bodyData.[1]country

console.log(value)

响应主体看起来像这样

[
    {
        "Country": "United Kingdom",
    }
]

我知道问题是[],并且需要在它之前有一个字符串,但是API没有用字符串定义,我不能只使用以下内容,因为它是未定义的:

bodyData = JSON.parse(responseBody)

value = bodyData.country

console.log(value)

知道如何使它起作用吗?

答案

我认为您的参考文献略有错误。

这应该做:

let bodyData = pm.response.json()

let country = bodyData[0].Country

console.log(country) 

然后设置变量,您将需要使用:

pm.environment.set("country", country)

以上是关于如何在邮递员测试脚本中解析JSON的主要内容,如果未能解决你的问题,请参考以下文章

如何将邮递员请求正文保存在一个地方并在运行时通过

JSON 解析错误:无法从 START_OBJECT 令牌中反序列化 `byte[]` 的实例

如何在邮递员的同一请求中发送多部分/表单数据和嵌套 json?

如何在 CI 环境中运行 postman 的 newman?

邮递员脚本:如何解码令牌

如何将变量从 JSON 传递到邮递员正文