【问题标题】:Facebook4J OAuth failingFacebook4J OAuth 失败
【发布时间】:2016-05-02 15:03:59
【问题描述】:

我正在尝试使用 Facebook4J 搜索公共项目,我知道我需要一个 appId 和 appSecret 我有,应用程序令牌是这两个,它们之间有一个管道符号(据我所知)。我不明白为什么会出现 OAuthError ,请查看下面的代码和准确的错误代码。

    facebook4j.conf.ConfigurationBuilder fac = new facebook4j.conf.ConfigurationBuilder();

    fac.setDebugEnabled(true)
      .setOAuthAppId("appId")
      .setOAuthAppSecret("appSecret")
      .setOAuthPermissions("email,publish_stream");
    fac.setOAuthAccessToken(accessToken);
    FacebookFactory ff = new FacebookFactory(fac.build());
   Facebook facebook = ff.getInstance();

   ResponseList<JSONObject> results = facebook.search("%whatever");

这是我得到的以下错误代码。错误码一好像是未知API???

线程“主”消息中的异常 - 发生了未知错误。 代码 - 1 错误恢复的相关信息可以在 Facebook 开发者文档中找到: https://developers.facebook.com/docs/graph-api/using-graph-api/#errors

FacebookException{statusCode=500, errorType='OAuthException', errorMessage='An unknown error has occurred.', errorCode=1, errorSubcode=-1, version=2.4.2}
    at facebook4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:179)
    at facebook4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
    at facebook4j.internal.http.HttpClientWrapper.get(HttpClientWrapper.java:89)
    at facebook4j.FacebookImpl.get(FacebookImpl.java:2742)
    at facebook4j.FacebookImpl.search(FacebookImpl.java:2337)
    at facebook4j.FacebookImpl.search(FacebookImpl.java:2332)
    at Main.facebook4JRequest(Main.java:37)
    at Main.main(Main.java:15)

【问题讨论】:

    标签: java facebook facebook-graph-api facebook4j


    【解决方案1】:

    尝试使用下面对我有用的代码。

    Facebook facebook = new FacebookFactory().getInstance();  
    facebook.setOAuthAppId("XXXXXX", "XXXXXXXXXXXX");
    String accessTokenString = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
    AccessToken at = new AccessToken(accessTokenString);
    facebook.setOAuthAccessToken(at);
    
    ResponseList<Post> feeds = facebook.getPosts("%whatever", new Reading().limit(80));
    

    【讨论】:

    • 我现在可以使用它了。当我使用图形资源管理器中的临时访问令牌时,我从搜索中获得 X 量的数据,尽管当我使用从我的 App ID 和秘密获得的访问令牌时,我得到 Y。其中 X > Y 完全相同搜索。为什么?
    猜你喜欢
    • 2013-05-29
    • 2013-11-12
    • 2013-05-30
    • 1970-01-01
    • 2013-02-05
    • 2011-08-07
    • 1970-01-01
    • 2021-10-28
    • 2013-03-01
    相关资源
    最近更新 更多