2011-08-31 30 views
1

我需要從我的Facebook應用程序中顯示最新的5篇文章,並且我需要避免運行任何服務器端代碼。下面的工作,直到今天上午:如何獲取「任何有效的access_token」閱讀公共帖子?

var id = myappid; 
var limit = 5; 
var div = document.getElementById('facebook_posts'); 
FB.init(); 
FB.api('/'+id+'/posts', {'limit': limit}, function(response) { 
if (response && response.data && response.data.length) { 
    div.innerHTML = ''; 
    for (var i=0, l=response.data.length; i<l; i++) { 
     var post = response.data[i]; 
     if (post.message && post.link) 
      div.innerHTML += '<a href="' + post.link + '">' + post.message + '</a><br/>'; 
     } 
    } else { 
     div.innerHTML = 'Error loading facebook posts'; 
    } 
}); 

我沒有任何改變,但現在的Facebook返回「OAuthException」消息「來請求該資源的訪問令牌是必需的。」。 The API says我需要「任何有效的access_token才能看到公衆」。那麼,如何在不顯示驗證彈出窗口的情況下獲得「任何有效的access_token」?

回答

1

最簡單的事情就是使用爲管理員用戶創建的脫機訪問令牌。 Look here to find out how to create one

+0

請注意,如果你這樣做,你需要在網頁中嵌入訪問令牌,這將允許任何訪問網頁的人看到它,複製它並重用它。您可能對此沒有任何問題,但需要注意並注意,您不會授予令牌任何更改權限的權限,特別是因爲您明確打算避免使用服務器端編程。 – Femi

+0

不幸的是,[離線訪問令牌已被棄用](https://developers.facebook.com/roadmap/offline-access-removal/),因此您可能需要查看其他內容。 – zoul

0

您還可以使用Facebook圖形API資源管理器使用的令牌。但是,如果將令牌嵌入到頁面中,請不要從個人帳戶中獲取一個。

+0

這是否仍然有效?對我來說,看起來像Graph API Explorer現在還需要您請求與您的用戶帳戶關聯的短期訪問令牌。 – zoul

相關問題