本文档详细介绍了获取 facebook 访问令牌以及使用令牌获取 FB 提要的步骤。
例子:
一个活生生的例子可在
https://newtonjoshua.com
Graph API 简介:
Graph API 是获取数据进出 Facebook 平台的主要方式。它是一个基于 HTTP 的低级 API,可用于查询数据、发布新故事、管理广告、上传照片以及应用程序可能需要执行的各种其他任务。
脸书应用程序:
https://developers.facebook.com
创建一个 Facebook 应用程序。你会得到一个App_Id
和App_Secret
图形 API 资源管理器:
https://developers.facebook.com/tools/explorer/{{App_Id}}
/?method=GET&path=me%2Ffeed&version=v2.8
你会得到一个access_token
短暂的。所以这将是我们的short_lived_access_token
.
注意:在创建访问令牌时选择您需要的所有 fb 字段。这将授予访问令牌获取这些字段的权限。
访问令牌扩展:
https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id= {{App_Id}} &client_secret= {{App_Secret}} &fb_exchange_token= {{short-lived-access_token}}
您将获得access_token
有效期为 2 个月的证书。
访问令牌调试器:
https://developers.facebook.com/tools/debug/accesstoken?q= {{access_token}} &version=v2.8
您可以检查检查的详细信息access_token
。
Facebook SDK for JavaScript:
在您的 HTML 中包含以下 JavaScript,以将 SDK 异步加载到您的页面中
(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'));
Graph API:
让我们调用 API 来获取我们的 FB id、个人资料图片、封面图片和提要。
window.fbAsyncInit = function () {
FB.init({
appId: '{{App_Id }}',
xfbml: true,
version: 'v2.7'
});
FB.api(
'/me',
'GET', {
fields: 'id,picture{url},cover,feed',
access_token: {{access_token}}
},
function (response) {
if (response.error) {
console.error(response.error.message);
}
if (response.picture.data.url) {
profilePic = response.picture.data.url;
}
if (response.cover.source) {
coverPic = response.cover.source;
}
if (response.feed.data) {
feeds = response.feed.data;
feeds.forEach(function (feed) {
// view each feed content
});
}
if (response.feed.paging.next) {
nextFeedPage = response.feed.paging.next;
// a request to nextFeedPage will give the next set of feeds
}
}
);
};
使用 Graph API Explorer 设计应在“字段”中输入的查询(例如:“id,picture{url},cover,feed”)
现在您可以使用您的 access_token 从 Facebook Graph API 获取您的 Facebook 数据。
参考https://developers.facebook.com/docs/graph-api/overview/
注意:您access_token
将在 2 个月后到期。之后创建一个新的 access_token。