2011-11-13 22 views
11

我试图拨打FB.ui在iframe中创建墙贴。但是,当我将显示设置为iframe时,我得到一个102 error "Iframe dialogs must be called with a session key"。我有一个访问令牌,我登录了,其他一切似乎都在工作(我甚至可以直接使用PHP直接发布到流中,而无需提示提示)。有任何想法吗?必须使用会话密钥调用Iframe对话框

PHP:

require_once('facebook.php'); 
define('APP_ID',"276733022359677"); 
define('APP_SECRET',"xxxx"); 
$my_url = URI_B."/spider/"; 

$config = array(); 
$config['appId'] = APP_ID; 
$config['secret'] = APP_SECRET; 
$facebook = new Facebook($config); 
$fbid = $facebook->getUser(); 
if($fbid == 0){ 
    $scope = ""; 
    header("Location: ".$facebook->getLoginUrl($scope)); 
} 

的Javascript:

FB.init({appId: "276733022359677", status: true, cookie: true}); 
function publish() { 
    var obj = { 
     display: 'iframe', 
     method: 'feed', 
     link: 'http://discussiontopic.comyr.com/spider/', 
     name: 'Test', 
     caption: 'Test Caption', 
     description: 'This is a test.' 
    }; 

    FB.ui(obj); 
} 

我也得到在登录页面未指定的错误(如果有重定向登录)。

+0

我面临着同样的错误! :( –

回答

2

如果有用户的访问令牌,将其指定为参数来调用FB.ui

var obj = { 
    display: 'iframe', 
    access_token: '<%= $access_token %>', 
    method: 'feed', 
    link: 'http://discussiontopic.comyr.com/spider/', 
    name: 'Test', 
    caption: 'Test Caption', 
    description: 'This is a test.' 
}; 
相关问题