我正在使用此代码,但它返回空数据数组。我的access_token拥有所有权限。
我知道PAGE_ID,现在我需要从这个页面获取活动。
谢谢
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : APP_ID, // App ID
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
// Additional initialization code here
};
// Load the SDK Asynchronously
(function(d){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
}(document));
var interval = setInterval(function() {
if (typeof FB != 'undefined') {
clearInterval(interval);
FB.api('/' + PAGE_ID +'/events?access_token=' + ACCESS_TOKEN, function(response) {
//do something with response
});
}
}, 20);
</script>
答案 0 :(得分:1)
从您的代码中不清楚如何获取access_token - 您是否使用了需要检索事件的page \ account的访问令牌?我一直在做的事情(不知道我在哪里采用这种技术)的页面事件是循环用户帐户以获取相关页面的访问令牌。像这样的东西(php)
$accounts = $facebook->api('/me/accounts');
foreach($accounts['data'] as $account){
if($account['id'] == $page_id){
$page_access_token = $account['access_token'];
}
}
答案 1 :(得分:1)
我从http://developers.facebook.com/tools/explorer/获得的APP的第一次access_token错误。 (也许它只适用于测试模式)因为我无法通过此access_token获取事件。
在http://developers.facebook.com/docs/authentication/applications/上写着:
App Access令牌通常不会过期。生成后,它们无限期有效。
要获取App Access令牌,请执行HTTP GET: https://graph.facebook.com/oauth/access_token?client_id=YOUR_APP_ID&client_secret=YOUR_APP_SECRET&grant_type=client_credentials
我使用HTTP GET获取access_token,通过此access_token我从facebook页面获取事件:https://graph.facebook.com/PAGE_ID/events