Java Restfb-为什么当我获取我的管理组时,应用程序抛出OAutheException:(#200)权限错误(代码200,子代码null)

Java Restfb-为什么当我获取我的管理组时,应用程序抛出OAutheException:(#200)权限错误(代码200,子代码null),java,facebook,restfb,Java,Facebook,Restfb,我正在用Java编程,我正在尝试获取所有Facebook群组,我是管理员 因此,我在Facebook Graph API Explorer中创建了一个名为“Secrets”的应用程序 在生成访问令牌时检查了所有权限 对于我的Java应用程序,我使用的是库:restfb-1.18.0 奇怪的是,我得到了我管理的组的列表,但是 应用程序抛出异常:OAutheException:(#200)权限错误(代码200,子代码null) 我不知道为什么会出现这个错误 以下是我的代码片段: String acc

我正在用Java编程,我正在尝试获取所有Facebook群组,我是管理员

因此,我在Facebook Graph API Explorer中创建了一个名为“Secrets”的应用程序 在生成访问令牌时检查了所有权限

对于我的Java应用程序,我使用的是库:restfb-1.18.0

奇怪的是,我得到了我管理的组的列表,但是 应用程序抛出异常:OAutheException:(#200)权限错误(代码200,子代码null)

我不知道为什么会出现这个错误

以下是我的代码片段:

String accessTokenGraphApiExplorer = "...";

FacebookClient fbClient = new DefaultFacebookClient(accessTokenGraphApiExplorer,Version.VERSION_2_0);



int counter = 0;
final String MY_FEEDS_PROPERTY = "me/groups";

String param = "groups,name";

Connection<Group> result = fbClient.fetchConnection(MY_FEEDS_PROPERTY, Group.class, Parameter.with("fields", param));

try {
    for (List<Group> groupPage : result) {
        for (Group group : groupPage) {
            System.out.println(group.getName());
            counter++;
        }
    }
    System.out.println("# of Groups I admin: " + counter);
}
catch (Exception e) {
    System.out.println(e);
}
String accessTokenGraphieExplorer=“…”;
FacebookClient fbClient=新的DefaultFacebookClient(AccessTokenGraphipeExplorer,Version.Version\u 2\u 0);
int计数器=0;
最后一个字符串MY\u FEEDS\u PROPERTY=“me/groups”;
String param=“组,名称”;
连接结果=fbClient.fetchConnection(MY_FEEDS_属性,Group.class,Parameter.with(“fields”,param));
试一试{
对于(列表组页面:结果){
对于(组:groupPage){
System.out.println(group.getName());
计数器++;
}
}
System.out.println(“#组I管理:“+计数器”);
}
捕获(例外e){
系统输出打印ln(e);
}

我如何修复它?

为什么您要在字段列表中请求
组?您已经在从用户节点的
端点请求数据了,那么这到底是指什么呢?这意味着您需要返回的每个组节点的字段
groups
。组节点下面没有额外的
groups
字段或边。我之所以在字段中使用“groups”,是因为当我在Graph API Exlporer中使用它时,它给了我想要的结果:只有我是管理员的组。现在如何解决这个异常呢?好吧,那似乎是一些未记录的魔法,在文档中找不到任何关于它的信息它到底在哪里抛出异常?看起来只有结果上的循环被包装在try/catch中,而不是实际的API调用本身-那么它是来自try/catch块内部,还是来自之前API调用本身的未捕获异常,只是冒泡直到它显示在某个地方?我添加try/catch的原因是因为在主for循环中,当它尝试转到下一个迭代时,抛出OAutheException:(#200)权限错误(代码200,子代码null),主for循环表示分页,其中每个分页包含25个groupPages。似乎是分页的问题。它已经在GAE中抛出了错误,当我添加
limit
参数(强制分页)-
me/groups?fields=id,name&limit=2
起作用时,当我添加
groups
字段时,我也会在那里得到一个“permissions error”。我猜你可以提交一份bug报告,并询问他们这是否会得到修复,-或者删除
字段,改为添加
管理员
(其中将包含true/false),并过滤掉你需要的内容。(这似乎不会引发相同的错误,即在GAE中使用的分页。)