Я получаю "(# 200) Пользователь не разрешил приложению выполнять эту ошибку действия при отправке сообщения на стене пользователя facebook. Я использую API-интерфейс facebook. Я также установил разрешение «publish_actions» в области видимости, но не работал. Мой код
require 'facebook/facebook.php'; $facebook = new Facebook(array( 'appId' => APP_ID, 'secret' => APP_SECRET, )); $user = $facebook->getUser(); if ($user) { $accessToken = $facebook->getAccessToken(); try { //create message with token gained before $post = array( 'access_token' => $accessToken, 'message' => 'Test message' ); $res = $facebook->api('/me/feed', 'POST', $post); } catch (FacebookApiException $e) { error_log($e); $user = null; } } else { # There's no active session, let's generate one $login_url = $facebook->getLoginUrl(array( 'scope' => 'publish_actions' )); header("Location: " . $login_url); }
Не могли бы вы предложить мне, чего я не вижу в коде или в приложении?
Поскольку вы упоминали, что он работает для админов, но не для кого-либо еще, очень ясно, в чем проблема: вам нужно пройти publish_actions
входа в систему с помощью publish_actions
– else, это разрешение будет работать только для пользователей с ролью в Приложение.
Вся информация, необходимая для проверки входа, находится в документах: https://developers.facebook.com/docs/facebook-login/review