Я разрабатываю проект PHP, который нуждается в интеграции Facebook. Поэтому, прежде чем я это сделаю по коду, я тестирую его с помощью утилиты Google Graph API explorer (https://developers.facebook.com/tools/explorer). То, что я делаю сейчас, это.Как опубликовать сообщение на странице Facebook с использованием CURL и без использования SDK в PHP
первый шаг
Get the user access_token by using the button at the top left.
второй этап
Make a GET request to "me/accounts" to get the page token and page id.
третий этап
Make a POST request to "{page_id}/feed" with the fields message={message} and access_token={page_token}
Он отлично работал и размещен на моей странице поклонников Facebook. Но когда я пытаюсь заменить «третий шаг» на PHP-код вроде этого
$data['message'] = "my message";
$data['access_token'] = $page_access_token; //page token from 2nd step
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, 'https://graph.facebook.com/{page_id}/feed');
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch,CURLOPT_POSTFIELDS, $data);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_POST, 1);
$resp = curl_exec($ch);
curl_close($ch);
$data_resp = json_decode($resp);
print_r($data_resp);
Это покажет мне эту ошибку.
stdClass Object ([error] => stdClass Object ([message] => (#200) Permissions error [type] => OAuthException [code] => 200))
Я установил разрешения manage_pages, publish_pages, publish_actions
отладить ваш 'access_token' и проверить, получили ли он необходимые разрешения. https://developers.facebook.com/tools/debug/ – Criesto