#json #http-post #flowable
#json #http-post #потоковый
Вопрос:
Я использую flowable и пытаюсь передать JSON как тело, но при обработке запроса он рассматривается как искаженный (или я так думаю, поскольку ошибка есть Bad Request
). По сути, я передаю некоторые параметры таким образом:
@PostMapping(path = PathConstants.START_ACTION)
public ResponseEntity<BaseResponse<ProcessInstance>> start(@PathVariable String processDefinitionId,
@RequestBody(required = false) Map<String, Object> params)
Они params
устанавливаются с помощью postman, таким образом:
{
"body": {
"email":"testmail@test",
"password":"password"
}
}
Процесс запускается, и выполняется вызов POST, но неверный запрос возвращается. Я попытался распечатать переменные процесса после этого вызова, и это то, что у меня есть:
body={email=testmail@test, password=password}
Поэтому я попытался передать это вместо:
{
"body": "{ "email":"testmail@test", "password":"password"}"
}
И при печати переменных у меня есть:
body={"email":"testmail@test", "password":"password"}
но все же это плохой запрос. Что не так с этим JSON?
Ответ №1:
Если вы хотите передать переменную, которая является JSON, вам нужно будет убедиться, что body
это тип JsonNode
из Jackson.
Глядя на вашу подпись запроса Map<String, Object>
, Jackson будет содержать карту карт.
Я не знаю, что вы пытаетесь сделать. Тем не менее, я бы настоятельно рекомендовал вам работать с предопределенными параметрами в вашем REST API. Если вам нужно что-то общее, вы можете использовать REST API Flowable, чтобы делать то, что вы хотите.