0

我正在使用 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邮递员设置,这样:

{
    "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 有什么问题?

4

1 回答 1

0

如果你想传递一个 JSON 变量,那么你需要确保它bodyJsonNode来自 Jackson 的类型。

查看您的请求签名Map<String, Object>,杰克逊将包含一张地图。

我不知道你想做什么。但是,我强烈建议您使用 REST API 中的预定义参数。如果你需要一些通用的东西,你可以使用 Flowable 的 REST API 来做你想做的事情。

于 2019-04-17T19:50:46.630 回答