Facebook OAuthException: ошибка при проверке приложения - PullRequest
3 голосов
/ 11 мая 2011

У меня есть простая страница PHP, которая будет использоваться для публикации сообщения на моей собственной стене.

Я получил токен offline_access с разрешениями «read_stream» и «publish_stream».

define('FB_APIKEY', 'MY_APP_KEY');

define('FB_SECRET', 'MY_APP_SECRET');

define('FB_SESSION', 'MY_OFFLINE_TOKEN');

require_once('facebook.php');

try {
    $facebook = new Facebook(FB_APIKEY, FB_SECRET);

    $facebook->api_client->session_key = FB_SESSION;

    $attachment = array(
        'message' => 'some meesgae',
        'name' => 'This is my demo Facebook application!',
        'caption' => "Caption of the Post",
        'link' => 'mylink.com',
        'description' => 'this is a description',
        'actions' => array(array(
                     'name' => 'Get Search', 
                     'link' => 'google.com'
                  ))
    );

    $result = $facebook->api('/me/feed?access_token=' . FB_SESSION, 
              'post', 
              $attachment);

     var_dump($result);

} catch(Exception $e) {
     echo $e;
}

Когда я запускаю это, я получаю «OAuthException: Ошибка при проверке приложения».

Я подтвердил, что мой автономный токен хорош.Когда я перехожу на https://graph.facebook.com/me?access_token=[MY_OFFLINE_TOKEN],, он возвращает мой общедоступный профиль в формате JSON.

Итак, я думаю, что я что-то не так делаю с вызовом API где-то, но ради жизни я не могукажется, чтобы понять это.Я боролся с этой проблемой в течение последних двух дней.Может кто-нибудь, пожалуйста, помогите!(

1 Ответ

4 голосов
/ 13 мая 2011

У вас нет идентификатора приложения здесь. И звоните так:

require_once('facebook.php');

$facebook = new Facebook( array(
    'appId'  => 'APP_ID',
    'secret' => 'APP_SECRET',
    'cookie' => true
));

try {
    $attachment = array(
        'message' => 'some meesgae',
        'name' => 'This is my demo Facebook application!',
        'caption' => "Caption of the Post",
        'link' => 'mylink.com',
        'description' => 'this is a description',
        'actions' => array(array(
            'name' => 'Get Search', 
            'link' => 'google.com'
            ))
    );

    $attachment['access_token'] = $offline_access_token; // add it to the array

    $result = $facebook->api('/me/feed', 'POST', $attachment );

    var_dump($result);

} catch(Exception $e) {
    // error_log( $e ); // should use something like this when in production
    echo $e;
}

Не проверено, но должно работать. Дайте мне знать, если это не так.

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