В редакторе HTTP-клиента на IntelliJ я пытаюсь сделать это:
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 не переводил переменные в двойные Curlies. Я могу использовать переменные в заголовке HTPP, например:
GET https://my-request
Authorization: Bearer {{my-first-returned-var}}
Но я не мог использовать эти переменные в теле JSON.
API, который я пытаюсь использовать, - это REST-контроллер Spring Boot, который использует библиотеку Jackson lib для десериализации тела из запроса в Java объект. Сообщение об ошибке, возвращаемое Spring Boot, выглядит примерно так:
JSON ошибка анализа: невозможно десериализовать экземпляр java.lang.String
из токена START_OBJECT; вложенное исключение: com.faster xml .jackson.databind.ex c .MismatchedInputException