如何在 Paw 中使用动态键遍历对象?
How to traverse object with dynamic keys in Paw?
假设我们有以下 JSON 响应:
{
"abcd1234": {
"foo": "bar"
}
}
如何在 响应解析正文 值中访问 "bar"?在响应中,"abcd1234"
可以是任何内容。但是我们想要对象中的第一个键(在 JavaScript 中,这将是 Object.keys(res)[0]
)。
Paw 可以轻松解析 JSON(和 XML)响应并通过它们的键路径访问子字段。
这篇文档文章可能会有所帮助:https://paw.cloud/docs/advanced/reuse-values-from-previous-responses
插入 Response Parsed Body 动态值
设置输入请求并提取需要的值
在您的示例中,关键路径为:
abcd1234.foo
不过,您似乎需要在事先不知道密钥的情况下访问该路径。如果是这样,一种方法是使用 JavaScript 片段来实现您想要的行为。
在任何字段上,您可以右键单击并选择 扩展 > JS 脚本。
这里有一段可能符合您的需要:
function evaluate(context){
var request = context.getCurrentRequest();
var exchange = request.getLastExchange();
var body = JSON.parse(exchange.responseBody);
var key = Object.keys(body)[0];
var value = body[key].foo;
return value;
};
假设我们有以下 JSON 响应:
{
"abcd1234": {
"foo": "bar"
}
}
如何在 响应解析正文 值中访问 "bar"?在响应中,"abcd1234"
可以是任何内容。但是我们想要对象中的第一个键(在 JavaScript 中,这将是 Object.keys(res)[0]
)。
Paw 可以轻松解析 JSON(和 XML)响应并通过它们的键路径访问子字段。
这篇文档文章可能会有所帮助:https://paw.cloud/docs/advanced/reuse-values-from-previous-responses
插入 Response Parsed Body 动态值
设置输入请求并提取需要的值
在您的示例中,关键路径为:
abcd1234.foo
不过,您似乎需要在事先不知道密钥的情况下访问该路径。如果是这样,一种方法是使用 JavaScript 片段来实现您想要的行为。
在任何字段上,您可以右键单击并选择 扩展 > JS 脚本。
这里有一段可能符合您的需要:
function evaluate(context){
var request = context.getCurrentRequest();
var exchange = request.getLastExchange();
var body = JSON.parse(exchange.responseBody);
var key = Object.keys(body)[0];
var value = body[key].foo;
return value;
};