我发现 Graph API Explorer 是生成和测试令牌的最佳方法。如果您想以编程方式创建这些令牌,还可以获取请求代码。
根据访问令牌指南-页面访问令牌,要获取页面访问令牌,我们需要访问此端点-
curl -i -X GET "https://graph.facebook.com/{your-user-id}/accounts?access_token={user-access-token}
因此,要获取页面访问令牌,我们需要首先获取用户访问令牌和用户ID。
cURL请求:-
curl -X GET "https://graph.facebook.com/oauth/access_token?client_id={your-app-id}&client_secret={your-app-secret}&grant_type=client_credentials"
![enter image description here](https://istack.dev59.com/fmX0x.webp)
图形 API 浏览器:
![输入图像描述](https://istack.dev59.com/n50hr.webp)
我正在创建具有(权限)范围的令牌:pages_show_list
、pages_read_engagement
、pages_manage_metadata
、pages_read_user_content
、pages_manage_ads
、pages_manage_posts
、pages_manage_engagement
、public_profile
,您可以根据需要添加/删除。
GET https://developers.facebook.com/v5.0/me?fields=id,name
![enter image description here](https://istack.dev59.com/w58QM.webp)
现在我们可以像下面这样获取
页面访问令牌:-
这将返回您拥有角色的页面列表以及有关每个页面的信息,例如页面类别、您在每个页面上具有的特定权限和页面访问令牌。
cURL请求:-
curl -i -X GET "https://graph.facebook.com/{your-user-id}/accounts?access_token={user-access-token}
响应:
{
"data": [
{
"access_token": "EAACEdE...",
"category": "Brand",
"category_list": [
{
"id": "1605186416478696",
"name": "Brand"
}
],
"name": "Ash Cat Page",
"id": "1353269864728879",
"tasks": [
"ANALYZE",
"ADVERTISE",
"MODERATE",
"CREATE_CONTENT",
"MANAGE"
]
},
{
"access_token": "EAACEdE...",
"category": "Pet Groomer",
"category_list": [
{
"id": "163003840417682",
"name": "Pet Groomer"
},
{
"id": "2632",
"name": "Pet"
}
],
"name": "Unofficial: Tigger the Cat",
"id": "1755847768034402",
"tasks": [
"ANALYZE",
"ADVERTISE",
"MODERATE",
"CREATE_CONTENT"
]
}
]
}
图形 API 浏览器:
![![enter image description here](https://istack.dev59.com/Dlcg2.webp)
要获取其他令牌,如用户访问令牌、长期令牌等,您可以采用相同的方法。
希望这有所帮助,如果您认为我应该添加更多细节,请告诉我。
var authToken ='THE_CODE_I_GOT';``var feedQuery ='graph.facebook.com/MY_PAGE_ID/feed';``var feedURL =feedQuery +'?access_token='+ authToken +'&callback=?';``$.getJSON(feedURL,function(data){``var d = data.data; for( i=0; i < d.length; i++) { d[i].message ? $("#list").append('<li>'+ d[i].message +'</li>') : ''; // lots of other stuff, you got it } });
- Rafael 'BSIDES' Pereira