如何使用Java获取instagram追随者列表?

如何使用Java获取instagram追随者列表?,java,jackson,gson,retrofit,Java,Jackson,Gson,Retrofit,我想用以下格式解析Json: {"data": { "user": { "edge_follow": { "count": 2554, "page_info": { "node": { "id": "5719761315", "username": "disneyangell" ... "node": { "id": "2260368333", "username": "moosa_sed

我想用以下格式解析
Json

{"data": {
  "user": {
    "edge_follow": {
        "count": 2554, "page_info": {
        "node": {
            "id": "5719761315", "username": "disneyangell" ...
        "node": {
            "id": "2260368333", "username": "moosa_sedaghat",...
        "node": {
            "id": "3982701506", "username": "alidadashi512", ...
        .
        .
        .
由此; 我从www.jsonschema2pojo.org获得了我的
pojo
s/ 我还尝试了
GsonConverter
和Jackson
ObjectMapper

问题是解析对象的节点列表为空或始终为零。 如何解决这个问题?
如果我需要使用
CustomConverter
为这种情况编写它。

因此,要获得想要的JSON,您必须登录到instagiam。否则,您将在get请求返回的JSON中获得一个空的“edges”对象。如果您已登录,下面是一个使用Gson执行此操作的示例:

POJO(可能需要为感兴趣的字段添加getter方法):

公共类FollowJson{
数据;
字符串状态;
公共数组列表getFollowNodes(){
返回数据。getFollowNodes();
}
类数据{
用户;
公共数组列表getFollowNodes(){
返回user.getFollowNodes();
}
}
类用户{
边跟随边跟随;
公共数组列表getFollowNodes(){
返回边_follow.getFollowNodes();
}
}
类边如下{
整数计数;
阵列列表边;
HashMap页面信息;
公共数组列表getFollowNodes(){
ArrayList bufList=新的ArrayList();
用于(外部节点外部:边){
bufList.add(outer.getNode());
}
返回bufList;
}
}
类外节点{
跟节点;
公共FollowNode getNode(){
返回节点;
}
}
类跟随节点{
布尔值后跟_,后跟_查看器;
字符串全名;
字符串id;
布尔值是经过验证的;
字符串配置文件\图片\ url;
_查看器请求的布尔值;
字符串用户名;
公共布尔getFollowedStatus(){
返回由用户跟随的\u;
}
公共字符串getId(){
返回id;
}
公共字符串getUsername(){
返回用户名;
}
}
}
然后将POJO.class和JSON字符串传递给方法:

public <T> T getJsonFromString(String jsonString, Class<T> var){
    GsonBuilder builder = new GsonBuilder();
    return builder.create().fromJson(jsonString, var);
}
public T getJsonFromString(String-jsonString,Class-var){
GsonBuilder=新的GsonBuilder();
返回builder.create().fromJson(jsonString,var);
}

然后可以对返回的对象调用getFollowNodes(),该对象返回一个表示JSON中“节点”的对象数组(FollowNode)

谢谢,我没有检查回复体。但是现在如何使用okhttp获取json呢?我的意思是如何设置cookies,或者……我从未使用过okhttp,但一般来说,您可以使用java.net.CookieManager来处理cookies。您可以从响应头获取cookie,例如通过向发送get请求。然后,您向上面的链接发送一个post请求,其中包含cookie、参数(用户名和密码)和必要的请求头。您可以使用浏览器的开发人员工具检查post标头包含的内容(如:“主机”、“csrftoken”…)。我在浏览器Http标头中找到了cookie,它正在工作。。。再次感谢:)
public <T> T getJsonFromString(String jsonString, Class<T> var){
    GsonBuilder builder = new GsonBuilder();
    return builder.create().fromJson(jsonString, var);
}