php (# 200) Пользователь не авторизовал приложение для выполнения этого действия

0

что я должен сделать, чтобы исправить эту проблему, это мой код. Я использую API-интерфейс facebook для выполнения этого require_once ("src/facebook.php"); // установить правильный путь

    $config = array();
    $config['appId'] = '000000000000000';
    $config['secret'] = '0000000000000000000000';
    $config['fileUpload'] = false; // optional
    // $config['publish_actions'] = true;
    $fb = new Facebook($config);

    $params = array(
      // this is the access token for Fan Page
      "access_token" => "--------------------- my access token --------------------------",
      "message" => "Here is a blog post about auto posting on Facebook using PHP #php #facebook",
      "link" => "http://www.pontikis.net/blog/auto_post_on_facebook_with_php",
      "picture" => "http://i.imgur.com/lHkOsiH.png ",
      "name" => "How to Auto Post on Facebook with PHP",
      "caption" => "www.pontikis.net",
      "description" => "Automatically post on Facebook with PHP using Facebook PHP SDK. How to create a Facebook app. Obtain and extend Facebook access tokens. Cron automation."
    );

    try {
      // 466400200079875 is Facebook id of Fan page https://www.facebook.com/pontikis.net 
      $ret = $fb->api('/417648154966881/feed', 'POST', $params);
      echo 'Successfully posted to Facebook Fan Page';
    } catch(Exception $e) {
      echo $e->getMessage();
    }
  • 0
    Вы спрашиваете разрешение publish_stream
  • 0
    как я могу это сделать
Показать ещё 2 комментария
Теги:
facebook-graph-api

2 ответа

0

Сообщение об ошибке означает, что вы не авторизовали пользователя с разрешением publish_actions или вы вообще не разрешали пользователю.

О авторизации, ознакомьтесь с этой страницей в документах Facebook: https://developers.facebook.com/docs/php/gettingstarted/4.0.0

Имейте в виду, что вам нужен "токен доступа к странице" для публикации "как страницы", это очень хорошо объясняется в следующих статьях:

В принципе, вы должны разрешить пользователю publish_actions И manage_pages и позвонить /me/accounts с API, чтобы получить страницу лексем для всех страниц пользователя.

... и затем появляется " Login Review ". Эти разрешения будут работать только для пользователей с ролью в приложении (Admin/Developer/Tester). Перед тем, как вы сможете опубликовать свое приложение, вам необходимо пройти через процесс обзора.

Конечно, вы должны сами выполнять часть программирования. Это не так сложно, хотя :)

0

У меня есть код с запросом от пользователя... Я надеюсь, что эта помощь. У вас есть старая версия с facebook api, я скоро буду обновлять настройки

require 'src/facebook.php';
        $config = array('appId' => '000000', 'secret' => '000000', );
        $facebook = new Facebook($config);
        try
        {
            $user_id = $facebook -> getUser();
            if($user_id){
                $user_profile = $facebook->api('/me','GET');
            }else {
                      $login_Url = $facebook -> getLoginUrl(array('canvas' => 1, 'fbconnect' => 0, 'scope' => 'user_about_me,user_activities,user_status,read_stream,publish_stream,photo_upload,status_update,publish_actions','redirect_uri' => 'https://yoururl.com/'));
                      exit("<script>window.top.location.replace('$login_Url');</script>");
            }
        }catch(exception $e){
            /
            exit("<script>location.reload();</script>");
    }

Обновить

Предпочтение по URL: https://developers.facebook.com/docs/reference/php/facebook-getLoginUrl/

Ещё вопросы

Сообщество Overcoder
Наверх
Меню