2015-08-28 65 views
2

我正在为业务构建网站。该业务目前有一个Facebook页面。在我创建的网站上,我需要展示最新的Facebook帖子。从Facebook页面获取最新帖子,并使用新的Graph API在网站上显示仅JavaScript

谷歌搜索引导我采用折旧方法,Facebook说现在要使用新的Graph API,但我从没有Facebook API经验开始,因此发现它压倒性的,可以使用一些帮助。

这是我的位置。

我这样做没有作为一个单一的页面网站没有服务器端语言,所以我只使用JavaScript。到目前为止,我已经在我的身体标记之后获得了FB JS SDK脚本,并为我的页面设置了应用程序ID设置。

<script> 
    window.fbAsyncInit = function() { 
     FB.init({ 
      appId: 'your-app-id', // except real id 
      xfbml: true, 
      version: 'v2.4' 
     }); 
    }; 

    (function (d, s, id) { 
     var js, fjs = d.getElementsByTagName(s)[0]; 
     if (d.getElementById(id)) { return; } 
     js = d.createElement(s); js.id = id; 
     js.src = "//connect.facebook.net/en_US/sdk.js"; 
     fjs.parentNode.insertBefore(js, fjs); 
    }(document, 'script', 'facebook-jssdk')); 
</script> 

我已将我的FB应用程序与我的FB页面链接起来。现在我需要在我的网站上显示最近的帖子。

+2

随着API第2版,您需要一个访问令牌来请求这种数据。所以如果你只想做那个客户端,那么你必须先让用户用他们的FB账户登录。在服务器端,您可以使用您的应用程序访问令牌或页面访问令牌 - 但这些绝不能在客户端代码中公开。除此之外,你唯一的选择是使用页面插件 - 它可以显示页面的最后X个帖子。 – CBroe

+0

谢谢,我想页面插件是唯一的方法,所以这在技术上是答案,如果你想回答这个问题。 – SomeRandomDeveloper

回答

1
FB.api(
    "/{page-id}/feed", 
    function (response) { 
     if (response && !response.error) { 
     /* handle the result */ 
     } 
    } 
); 

来源:https://developers.facebook.com/docs/graph-api/reference/v2.4/page/feed

你可以只使用以下API调用来获取只有一个条目:

/{page-id}/feed?limit=1 
+0

感谢您的帮助。我发现这只适用于我有用户登录到他们不是的网站。就像Cbroe说的,我不得不使用页面插件。 – SomeRandomDeveloper

+3

这是不正确的,而不是CBroe所说的。您可以使用应用访问令牌,无需任何用户登录。你只需要使用应用令牌服务器端。 – luschn

相关问题