FB GraphAPI: размещение на стене страницы FB с другого сайта - PullRequest
1 голос
/ 06 января 2011

Я создаю CMS для веб-сайта и хочу добавить функциональность для публикации чего-либо (например, новостей) на странице FB этого сайта [не в профиле пользователя].

Я прочитал документацию FB и обнаружил, что мне нужно приложение FB, которое должно иметь доступ к этой странице. После этого я смогу авторизоваться на своем веб-сайте в качестве приложения и опубликовать ссылку на странице.

Я создал образец страницы и пустое приложение (без рабочего кода). Затем я добавил на страницу [на странице профиля приложения есть кнопка «Добавить на мою страницу»]. Приложение никогда не запрашивало никаких разрешений, и, на самом деле, я не знаю, как я могу «заставить» свое приложение запрашивать разрешения у Page ...

Теперь с моего сервера я аутентифицируюсь как Приложение:

$postArr = Array(
            'grant_type'=>'client_credentials',
            'scope'=>'publish_stream',
            'client_id'=>$appId,
            'client_secret'=>$appSecret
            );
$access_token = CURL_post('https://graph.facebook.com/oauth/access_token',$postArr,true);

Я получаю токен доступа и пытаюсь опубликовать сообщение на стене страницы:

$postArr = Array(
            'access_token'=>$access,
            'message'=>"Message!",
            'link'=>'http://egern.net/',
            'name'=>"TITLE",
            'caption'=>"TITLE2!");
$r = CURL_post("https://graph.facebook.com/MYPAGEID/feed",$postArr,true);

Я получаю следующую ошибку: (# 200) Пользователь не авторизовал приложение для выполнения этого действия

Теперь я не могу понять: как Страница должна авторизовать Приложение?

Спасибо.

1 Ответ

1 голос
/ 06 января 2011

Чтобы иметь возможность публиковать на своей странице, используя график API, есть несколько шагов, чтобы сделать это:

  1. Администратор страницы должен установить ваше приложение с разрешения manage_pages, ссылка . А publish_stream для шага 3
  2. Теперь запрос метода учетных записей ->api('/me/accounts?access_token=XXX') с только что полученным access_token извлечет все ваши страницы (учетные записи) с соответствующими access_token
  3. используйте страницу access_token для публикации ваших "новостей" на вашей странице ->api('/page_id/feed', 'post', $postArr)

Почти такие же инструкции доступны здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...