FB.ui失败“错误消息:会话密钥没有相应的用户”

时间:2011-11-04 08:47:32

标签: javascript facebook facebook-javascript-sdk

我正在尝试打开一个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 :(得分:0)

您是否正在使用页面访问令牌/以页面身份登录?在这种情况下,对话框不起作用