Java 带有OAUTH访问令牌的Facebook4j

Java 带有OAUTH访问令牌的Facebook4j,java,facebook,facebook-graph-api,facebook-access-token,Java,Facebook,Facebook Graph Api,Facebook Access Token,有没有人能帮我提供一个facebook的OAuth访问令牌的例子,通过获取用户凭据和允许类似linkedin API的字段 我试着用 Configuration configuration = createConfiguration(); FacebookFactory facebookFactory = new FacebookFactory(configuration ); Facebook facebookClient = facebookFactory.

有没有人能帮我提供一个facebook的OAuth访问令牌的例子,通过获取用户凭据和允许类似linkedin API的字段

我试着用

Configuration configuration =  createConfiguration();
        FacebookFactory facebookFactory = new FacebookFactory(configuration );
        Facebook facebookClient = facebookFactory.getInstance();
        AccessToken accessToken = null;
        try{
            OAuthSupport oAuthSupport = new OAuthAuthorization(configuration );
            accessToken = oAuthSupport.getOAuthAppAccessToken();

        }catch (FacebookException e) {
            logger.error("Error while creating access token " + e.getLocalizedMessage(), e);
        }

public Configuration createConfiguration() {
        ConfigurationBuilder confBuilder = new ConfigurationBuilder();

        confBuilder.setDebugEnabled(APIConfiguration.DEBUG_ENABLED);
        confBuilder.setOAuthAppId(APIConfiguration.APP_ID);
        confBuilder.setOAuthAppSecret(APIConfiguration.APP_SECRET);
        confBuilder.setUseSSL(APIConfiguration.USE_SSL);
        confBuilder.setJSONStoreEnabled(APIConfiguration.JSON_STORE_ENABLED);


        Configuration configuration = confBuilder.build();
        return configuration;
    }
我得到了访问令牌,但我可以搜索它显示的用户

严重:获取facebook用户时出错{“Error”:{“message”:“(#200)必须具有有效的访问令牌才能访问此端点”,“type”:“OAuthException”,“code”:200}”

我如何使用回调url获得OAUTH,我尝试重定向uri,但它没有给出任何代码


这是我的java控制台应用程序

我从使用您的代码中获得灵感,我也犯了类似的错误。解决方案似乎是在faceboook developer center=中正确注册应用程序,中心必须在该中心创建、编辑、提交和批准应用程序。

我认为您缺少这一行:

facebookClient.setOAuthAccessToken( accessToken );

将accessToken定义为以下示例:

accessToken = new AccessToken("CAACEdEose0cBAFpfeSxd3WFzkUfm4l4PTKtLblS0hpbOFQcanzYciYMCSuFNOgiZBEtjxWZCHvwU0iP4cTe7aHXeNB5nQOC88ECE1lzVvjNKPjXNsGmJfbNfGEULQ0zEfeTla3Puknj6AGcsPy5VKKEQdJ3FbJ20RRemtgAGh05kgXsXnLrdfCPq6e6eFyu8dWxL1ZBv0EZBe9le3m0U");

如果accesToken字符串是从

获得的,我面临着同样的问题,如果您解决了此问题,请与我们分享解决方案。。。
accessToken = new AccessToken("CAACEdEose0cBAFpfeSxd3WFzkUfm4l4PTKtLblS0hpbOFQcanzYciYMCSuFNOgiZBEtjxWZCHvwU0iP4cTe7aHXeNB5nQOC88ECE1lzVvjNKPjXNsGmJfbNfGEULQ0zEfeTla3Puknj6AGcsPy5VKKEQdJ3FbJ20RRemtgAGh05kgXsXnLrdfCPq6e6eFyu8dWxL1ZBv0EZBe9le3m0U");