我有一个 REST API,它在 RequestBody 中接受 application/json。json 中的键未预定义。所以我在swagger中使用了additionalProperties来定义这个JSON。此外,这个 json 也可能包含 JSONArray。
问题是,当使用 additionalProperties 时,它在生成的 java 代码中被内部视为 Map<String, Object> 。该映射通过内部使用 Gson 反序列化为 JSON。在此转换过程中,以下 json
{
"BooleanField": "true",
"ArrayField": [
"SDK ADD",
"SDK ADD 2"
],
"StringField": "SDK",
"IntField": "1"
}
被转换为
{
"BooleanField": "true",
"ArrayField": {
"myArrayList": [
"SDK ADD",
"SDK ADD 2"
]
},
"StringField": "SDK",
"IntField": "1"
}
json 数组放在myArrayList键中。这会导致此请求的输入验证失败。有没有更好的方法来解决这个问题?