我一直在尝试使用cURL访问有关我的Facebook PAGE的信息.我在Graph Explorer中传递了url me / accounts,其中显示了一些数据如下:
{
"data": [
{
"access_token": "tokenString",
"category": "Small business",
"name": "myPageName",
"id": "xxx",
"perms": [
"ADMINISTER",
"EDIT_PROFILE",
"CREATE_CONTENT",
"MODERATE_CONTENT",
"CREATE_ADS",
"BASIC_ADMIN"
]
}
],
"paging": {
"cursors": {
"before": "MTM4NzYwMjM5NDg5NTUzOQ==",
"after": "MTM4NzYwMjM5NDg5NTUzOQ=="
}
}
}
但是当我试图在cURL中获得相同的东西并通过终端运行时,它给出了一个错误“不支持的GET请求”
Code:
<?PHP
$url='https://graph.facebook.com/v2.3/me/accounts';
$ch=curl_init();
CURL_SetoPT($ch,CURLOPT_URL,$url);
CURL_SetoPT($ch,CURLOPT_RETURNTRANSFER, 1);
$json=json_decode(curl_exec($ch));
var_dump($json);
?>
Error:
object(stdClass)#1 (1) {
["error"]=>
object(stdClass)#2 (3) {
["message"]=>
string(114) "Unsupported get request. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api"
["type"]=>
string(20) "GraphMethodException"
["code"]=>
int(100)
}
}
页面权限:manage_pages,publish_pages
我检查了年龄限制:它对所有人开放.
那我在哪里错了?谢谢你的帮助
解决方法:
使用Graph Explorer时,会自动将Access Token添加到每个请求中.如果您通过cUrl执行相同的请求而未明确添加Access Token作为URL参数,那么它将失败.
您需要将access_token参数添加到您的调用中,并使用具有manage_pages权限的访问令牌(替换{access_token}).
<?PHP
$url='https://graph.facebook.com/v2.3/me/accounts?access_token={access_token}';
$ch=curl_init();
CURL_SetoPT($ch,CURLOPT_URL,$url);
CURL_SetoPT($ch,CURLOPT_RETURNTRANSFER, 1);
$json=json_decode(curl_exec($ch));
var_dump($json);
?>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。