1

我需要从GET请求中读取一个 id 并将其POST用于执行测试。我从 GET 检索到的 id 是来自以下表达式的数组形式:

And def reqId =  response.teams[*].resource[1].resourceRequestId

`["59aeb24be4b0b17227553d07"]`

我将此 ID 存储为变量:

And def reqId =  response.teams[*].resource[1].resourceRequestId

当我在POST操作中使用它时,我收到以下错误:

exception":"org.springframework.http.converter.HttpMessageNotReadableException","message":"Could not read document: Can not deserialize instance of java.lang.String out of START_ARRAY token\n

有没有一种方法可以执行 JSON.stringify() 等来将值转换为字符串或提取它并在POST请求中更有目的地使用它

4

1 回答 1

2

您正在发送一个数组而不是单个字符串。请记住,当您[*]在 JsonPath 中使用时,结果始终是一个数组。

And def temp =  response.teams[*].resource[1].resourceRequestId
And def reqId = temp[0]

现在试试,应该可以了。我们正在引入一种get[0]语法便利,以便在下一个版本中使其更清晰。小心它。

于 2017-09-05T17:32:03.350 回答