检索Facebook公共页面Feed

时间:2015-09-02 12:57:53

标签: jquery facebook-graph-api

我刚开始使用facebook Graph API而且我有点挣扎。

我有一个ASP.Net网络应用程序,只需要显示来自Facebook公共页面的提要。它是一个托管在Web应用程序上的JavaScript / jQuery应用程序。我使用Facebook创建了一个应用程序,并获得了一个APP ID。

我有以下片段:



<script>
		  window.fbAsyncInit = function() {
		    FB.init({
		      appId      : '87745646546',
		      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>
&#13;
&#13;
&#13;

&#13;
&#13;
FB.api(
		    "/99999999/feed?access_token=xyteyfghhghghfghfgfhgfhg",
		    function (response) {
		      if (response && !response.error) {
		        alert(response.data.length);
		      }
		    }
);
&#13;
&#13;
&#13;

所以公共页面的id是99999999,我使用我的Facebook登录和Graph API Explorer生成了一个访问令牌。我按预期得到了结果。

不过,我读到访问令牌不是永久性的,它会过期。因此,每次应用加载时如何动态生成访问令牌。应用程序应该由可能甚至没有Facebook登录的用户使用。他们只想在页面上看到最新的Feed。

非常感谢任何帮助。

谢谢和问候

1 个答案:

答案 0 :(得分:0)

您可能会发现Page plugin符合您的要求 - 无需用户进行Facebook登录。如果您想更加重视Feed,那么最好运行代码来获取服务器端的最新帖子 - 将access_token保留在公共页面上是一个坏主意

要获取未过期的网页访问令牌swap your user token for a long-lived token,请使用新的access_token从/me/accounts获取网页访问令牌。页面访问令牌不会过期!