【发布时间】:2020-08-21 13:36:27
【问题描述】:
我有两个第三方 API,我正在使用 RestTemplate 获得 ResponseEntity<Object> 的响应。我想将响应解组为对象,以便可以访问其中的内容。
ResponseEntity<Object> response = restTemplate.exchange(apiEndPointToHit,HttpMethod.GET,null,Object.class);
第一个 API 响应
{
"responseStatus": "SUCCESS",
"size": 88,
"start": 0,
"limit": 200,
"sort": "id asc",
"users": [
{
"user": {
"user_name": "XYZ",
"user_first_name": "XYZ",
"user_last_name: "XYZ",
"user_email": "XYZ",
}
},
{
"user":{
"user_name":"ABC",
"user_first_name":"ABC",
"user_last_name":"ABC",
},
},
{
"user":{
"user_name":"PQR",
"user_first_name":"PQR",
"user_last_name":"PQR",
}
},
}
]
}
在此响应中,用户将包含多个用户。我想获取所有用户的列表。这样我就可以访问该列表字段中每个用户对象的内容,例如 user_name、user_first_name 等。
第二个 API 响应是
{
"message": {
"documents": {
}
}
}
在这种情况下,一条消息将包含一个文档。我想访问该文档。 JSON 响应包含多个字段。所以不可能创建 POJO 类。 有没有办法通过创建 POJO 类来访问响应实体中的对象?
【问题讨论】:
-
老实说,你的第一个 api 响应看起来很可疑 - 你有“用户” - 这是一个数组,很好 - 1!对象,包含 3x 相同的字段“用户”....
-
@Worthless 感谢您指出这一点。我已经更新了我的问题
标签: java spring-boot spring-mvc