2x 数组 POST 请求使用 Rest Assured 基于以下 JSON

2x array POST request using Rest Assured based on the following JSON

请帮助我根据以下输出创建正文请求:

{
  "categoryIds": [
    [
      "4654-456465-4564",
      "4654-456465-9512"
    ]
  ],
  "lastUpdate": "1231",
  "controlStructureId": "4654-456465-4564",
  "controntrolId": "4654-456465-4564",
  "vehicleId": "4654-456465-4564"
}

我的代码:

 Map<String,Object> jsonBodyUsingMap = new HashMap<String,Object>();
        jsonBodyUsingMap.put("lastUpdate", "1231");
        jsonBodyUsingMap.put("controlStructureId", "4654-456465-4564");
        jsonBodyUsingMap.put("controntrolId", "4654-456465-4564");
        jsonBodyUsingMap.put("vehicleId", "4654-456465-4564");

但是我不知道 categoryIds,请帮忙

这将解决您的问题。所以只需将 ArrayList 放在另一个 ArrayList 中,它就会被您使用的 JSON 转换器转换为数组:

    Map<String,Object> jsonBodyUsingMap = new HashMap<String,Object>();
    jsonBodyUsingMap.put("lastUpdate", "1231");
    jsonBodyUsingMap.put("controlStructureId", "4654-456465-4564");
    jsonBodyUsingMap.put("controntrolId", "4654-456465-4564");
    jsonBodyUsingMap.put("vehicleId", "4654-456465-4564");

    List<Object> categories = new ArrayList<>();
    List<String> subcategories = new ArrayList<>();
    subcategories.add("4654-456465-4564");
    subcategories.add("4654-456465-9512");
    categories.add(subcategories);
    jsonBodyUsingMap.put("categoryIds", categories);

结果将是:

{
   "categoryIds":[
      [
         "4654-456465-4564",
         "4654-456465-9512"
      ]
   ],
   "controlStructureId":"4654-456465-4564",
   "controntrolId":"4654-456465-4564",
   "lastUpdate":"1231",
   "vehicleId":"4654-456465-4564"
}