我一直在使用下面的代码使用restFb api从我的facebook主页获取数据。
import java.util.List;
import com.restfb.Connection;
import com.restfb.DefaultFacebookClient;
import com.restfb.FacebookClient;
import com.restfb.FacebookClient.AccessToken;
import com.restfb.types.Post;
import com.restfb.types.User;
public class restFB_tester {
public static void main(String[] args) {
//60 days auth
String authToken="XXXXXXX";
FacebookClient fbClient = new DefaultFacebookClient(authToken);
Connection<Post> result=fbClient.fetchConnection("me/home",Post.class);
int counter =0;
for(List<Post> page :result)
{
for(Post aPost:page)
{
System.out.println(aPost.getMessage());
System.out.println("fb.com/"+aPost.getId());
counter++;
}
}
System.out.println("No of Posts : "+counter);
}
}
这会引发错误:
线程“主”com.restfb.exception.FacebookOAuthException 中的异常:收到 OAuthException 类型的 Facebook 错误响应:(#200) 需要扩展权限:com.restfb.DefaultFacebookClient$DefaultGraphFacebookExceptionMapper.exceptionForTypeAndMessage(DefaultFacebookClient) 处的 read_stream(代码 200,子代码空) .java:1186) 在 com.restfb.DefaultFacebookClient.throwFacebookResponseStatusExceptionIfNecessary(DefaultFacebookClient.java:1112) 在 com.restfb.DefaultFacebookClient.makeRequestAndProcessResponse(DefaultFacebookClient.java:1053) 在 com.restfb.DefaultFacebookClient.makeRequest(DefaultFacebookClient.java:964)在 com.restfb.DefaultFacebookClient.makeRequest(DefaultFacebookClient.java:926) 在 com.restfb.DefaultFacebookClient.fetchConnection(DefaultFacebookClient.java:356) 在 org.hive。facebook.restFB_tester.main(restFB_tester.java:29)
我一直在尝试解决这个问题,但找不到任何运气。如果我使用返回用户数据的“我/提要”,我能够获取数据。我尝试在谷歌上找到它并尝试了不同的方法,但没有帮助。我在创建令牌时授予了所有权限。
请让我知道我在哪里做错了或者有什么可能的解决方案。在此先感谢。