Ошибка FB.ui «Сообщение об ошибке: у сеансового ключа нет соответствующего пользователя» - PullRequest
0 голосов
/ 04 ноября 2011

Я пытаюсь открыть диалоговое окно Facebook, однако по причинам, которые я не понимаю, пока оно не работает.

Этот код работал: (Я немного его почистил, чтобы улучшитьпроиллюстрировать проблему)

window.fbAsyncInit = function() {
  // get settings...
  $app_id = Drupal.settings.gdp_general.appid;
  $channel_url = Drupal.settings.gdp_general.channel_url;
  // init Facebook api
  FB.init({
    appId      : $app_id, // App ID
    channelURL : $channel_url, // Channel File
    status     : true, // check login status
    cookie     : true, // enable cookies to allow the server to access the session
    oauth      : true, // enable OAuth 2.0
    xfbml      : true  // parse XFBML
  });
};

// login the user and ask for the required permissions.
FB.login(function(response) {
  if (response.authResponse) {
  FB.api('/me', function(response) {
    // do some stuff with the retrieved data
    // ....
    // now post something on the users wall
    FB.api('/me/feed', 'post', {
      caption: $title,
      message: $description,
      link: $url
      }, function(response) {
    if (!response || response.error) {
      // error
      } else {
        // post was succesfull
        $form.submit();
      }
    });

  });
} else {
  //error
}
}, {scope: 'email, publish_stream'}); 
};

Эта публикация сообщения на стене пользователя, и отлично работает.Однако я думаю, что для пользователя было бы лучше открыть диалоговое окно, чтобы он мог видеть, что будет размещено на его стене.

Но когда я изменю

    FB.api('/me/feed', 'post', {

на

   FB.ui({method: 'feed',

Это больше не работает, и Facebook возвращает сообщение об ошибке «Сообщение об ошибке: у сеансового ключа нет соответствующего пользователя».

1 Ответ

0 голосов
/ 04 ноября 2011

Используете ли вы токен доступа к странице / вы вошли как страница?Диалоги не будут работать в этом случае

...