IntelliJ HTTP 客户端 - 在另一个 POST 请求的后续 JSON 正文中使用一个 POST 请求中的变量



在IntelliJ上的HTTP客户端编辑器中,我正在尝试这样做:

POST http://{{host}}/path-to-my-first-resource
Content-Type: application/json
{"field1":"false",
"field2":"test",
"field3":"test",
}

我得到了上述 POST 的结果:

> {%
client.global.set("my-first-returned-var", response.body.json.var1);
client.global.set("my-second-returned-var", response.body.json.var2);
client.global.set("my-third-returned-var", response.body.json.var3); 
%}

变量已成功返回。因此,我尝试在后续 POST 中使用这些变量,如下所示:

POST http://{{host}}/path-to-my-second-resource
Content-Type: application/json
{"anotherfield1":"{{my-first-returned-var}}",
"justanother":"{{my-second-returned-var}}"
}

我尝试在正文中发送带引号和不带引号的变量,但 IntelliJ 没有翻译双卷曲中的变量。我可以在HTPP标头上使用变量,例如:

GET https://my-request
Authorization: Bearer {{my-first-returned-var}}

但是我无法在 JSON 正文中使用这些变量。

我尝试使用的API是一个Spring Boot REST控制器,它使用Jackson lib将主体从请求反序列化为Java对象。Spring 启动返回的错误消息是这样的:

JSON 解析错误:无法从令牌中反序列化java.lang.StringSTART_OBJECT实例;嵌套异常是 com.fasterxml.jackson.databind.exc.MismatchedInputException

我知道你几个月前问过这个问题,但你试过这个吗:

client.global.set("my-first-returned-var", JSON.stringify(response.body.json.var1));

相关内容

  • 没有找到相关文章

最新更新