使用Spring Social或Restfb获取Facebook公共页面的订阅源



我需要构建一个服务器,它可以获取各种公司/品牌的公共提要详细信息。例如,我应该能够获得Cocacola(facebook.com/cocacolaindia)、百事可乐、Levis等上周的订阅源。由于我只是在寻找公共订阅源,我认为我不需要使用OAuth进行授权,但我看不到其他方法可以获得这些信息。例如,我尝试了下面的代码,但最后三种方法都不起作用。

        String acessTok = "{my app id}|{app seceret key}"; //App level token
    Facebook facebook = new FacebookTemplate(acessTok);
    FacebookProfile profile = facebook.userOperations().getUserProfile("cocacolaIndia");
    Page page = facebook.pageOperations().getPage("cocacolaIndia");
    List<Post> list= facebook.feedOperations().getFeed("cocacolaIndia");

有出路吗?我可以使用httpurl调用http://graph.facebook.com/和
解析json,但需要我自己的api来获得我不想做的不同字段。

您可以使用应用程序访问令牌。下面是一些RestFB的例子。

AccessToken accessToken = new DefaultFacebookClient().obtainAppAccessToken(MY_APP_ID, MY_APP_SECRET);

现在,您可以使用这个新的访问令牌构建您的FacebookClient

使用fetchConnection,您可以从所需的"粉丝页面"获取公共帖子。

我也遇到了同样的问题。我试图只使用AppIdAppSecret访问Facebook页面的公共帖子。

以下对我有效:

private Facebook facebook;
...
this.facebook = new FacebookTemplate("{AppId}|{AppSecret}");
...
Collection<Post> posts =this.facebook.feedOperations().getPosts("{PageId}");

我希望这会有所帮助。

最新更新