java - 无法反序列化对 POJO 类的 HTTP 响应。抛出 START_ARRAY 令牌
问题描述
我有一个 api 调用,它将响应如下。现在我想反序列化为 pojo 类。任何建议表示赞赏。
回复:
[
{
"id": 470,
"shipmentId": "1497",
},
{
"id": 471,
"shipmentId": "1498",
}
]
我的名为 TripHandlerShipmentsResponse.java 的 Pojo 类如下所示。
@Data
public class TripHandlerShipmentsResponse {
private List<Object> response;
}
现在在这里我试图反序列化响应
return httpResponse.deserialize(TripHandlerShipmentsResponse.class);
但是我遇到了错误。
Cannot deserialize instance of `Mypackage.TripHandlerShipmentsResponse` out of START_ARRAY token at [Source: (String)"[{"id":470, .............
解决方案
你的反应模型是错误的。创建具有相同 json 响应骨架的模型。
您必须在映射器中将类型作为数组或列表传递
推荐阅读
- entity-framework - 自动迁移不起作用 [EF Core]
- jquery - 使用 Webpack 4 时如何访问入口文件中的 jQuery 对象 ($)?
- scala - spark.streaming.backpressure.* 属性是否适用于 Spark 结构化流?
- python - 将值列表作为选项传递给 3 个下拉菜单
- laravel - Laravel - 我不明白为什么我的按钮没有打开多个折叠
- android - java.lang.String 类型的用户无法转换为 JSONObject json 响应 android
- php - mysqli num行的php问题不起作用
- tcp - Influxdb 不关闭 TCP 连接
- javascript - 是否可以使用 JS 正则表达式向 html 添加格式
- c# - 反序列化 JSON 错误将值转换为特定类型