【发布时间】:2011-11-24 13:24:48
【问题描述】:
在没有指定游标的情况下点击twitter friends/ids API 端点将返回此 JSON 响应:
["243439460","13334762", "14654522"]
然而,当你指定一个游标时,你会得到记录在案的格式:
{"next_cursor":0,"previous_cursor":0,"ids":["243439460","13334762","14654522"]}
使用 Jackson 反序列化第二个响应很容易使用
@JsonIgnoreProperties(ignoreUnknown = true)
public class FriendIds {
private List<String> ids;
public List<String> getIds() { return ids; }
public void setIds(List<String> ids) { this.ids = ids; }
}
和
FriendIds friendIds = new ObjectMapper().readValue(jsonStr, FriendIds.class);
但是我还没有找到类似的方法来反序列化使用 Jackson 对FriendIds 的第一个响应。关于如何做到这一点的任何想法?
【问题讨论】:
-
第一个响应不是 JSON - 它只是一个数组
-
@IgorDymov 是的。我最初是这么想的,但是我把它扔给了验证者接受了它。 jsonlint.com
-
是合法的JSON,没问题,但是作为数组需要映射到数组或者集合......