我正在製作一個Web應用程序,它從我們的Facebook頁面中提取最新帖子並處理它們。 這一切都工作正常,從this頁面生成的硬編碼訪問令牌。Facebook API - 訪問Web應用程序的令牌
問題是,這個令牌過期了,所以我正在尋找一個解決方案來生成一個新的令牌,每次頁面加載或一個非到期的令牌 - (我已經讀過某處,不過期的令牌不再存在了)。
但這些例子中沒有一個似乎有效。
的一些代碼,我至今沒有嘗試過任何投訴之前,這是我工作的例子 - 與到期的訪問令牌:
var Facebook = function() {
this.token = 'MYTOKEN';
this.lastPost = parseInt((new Date().getTime())/1000);
this.posts = [];
};
Facebook.prototype.GetPosts = function() {
var self = this;
var deffered = $q.defer();
var url = 'https://graph.facebook.com/fql?q=SELECT created_time, message, attachment FROM stream WHERE created_time < ' + self.lastPost + ' AND source_id = 437526302958567 ORDER BY created_time desc LIMIT 5&?access_token=' + this.token + '';
$http.get(url)
.success(function (response) {
angular.forEach(response.data, function (post) {
self.posts.push(new Post(post.message, post.attachment.media, post.attachment.media[0].src, post.created_time, 'facebook'));
});
self.lastPost = response.data[response.data.length -1].created_time;
deffered.resolve(self.posts);
self.posts = [];
});
return deffered.promise;
};
return Facebook;
任何幫助/建議將不勝感激。
您提供的第二個鏈接是我用於獲取非過期訪問令牌的解決方案,該解決方案適用於我,但僅限於在v1.0而不是v2.0版本中使用圖形瀏覽器。 我不喜歡你的方法是你將Access Token存儲在前端,這意味着每個人都可以看到它。 – Tobi