0

我有一个嵌套的 JSON 响应。JsonResponse 截图

我想从列表中获取第 0 个位置的字典,然后从中获取特定元素。例如,作为响应,{0} 和 {1},我希望得到完整的 {0}。然后从 {0},我只想提取“Id”值。
我不想每次都使用JsonPath.read(JsonResponse String, JSON Path)。所以寻找一些简单更好的选择。

如何将 JSON 响应转换为 Java 列表。以下是回应。

Response resp = given().header("Authorization", "Bearer "+"dwded").
                accept(ContentType.JSON).
                when().
                get("https://example.com");      
                return resp;
4

2 回答 2

0

对于测试 web-API 或 REST 端点,我会推荐Karate

所以它变得简单:

* def id = response[0].Id
于 2017-12-15T16:35:47.067 回答
0

在招摇编辑器宠物示例中。

  responses:
    200:
      description: "successful operation"
      schema:
        type: "array"
        items:
          $ref: "#/definitions/Pet"

一个模型是从

  Pet:
    type: "object"
    properties:
      name:
        type: "string"
        example: "doggie"

这生成了一个java类

public class Pet   {

  @JsonProperty("name")
  private String name = null;

该 api 显示了一个 REST,它返回一个可以显示为 json 对象数组的实体

    ResponseEntity<List<Pet>> findPetsByStatus( @NotNull@ApiParam(value = "Status values that need to be considered for filter", required = true, allowableValues = "available, pending, sold") @RequestParam(value = "status", required = true) List<String> status);
于 2017-12-15T16:43:29.590 回答