2009-12-28 60 views
4

我有一个iPhone应用程序创建一个Facebook会话,我想恢复这个会话在我的服务器上交出一些工作。我的iPhone应用程序工作得很好,只是我在恢复会话时遇到了问题 - 最好缺少文档(来自http://wiki.developers.facebook.com/index.php/Facebook_Connect_for_iPhone - “如果您想从服务器调用API,则只需获取sessionKey和会话中的sessionSecret属性并将它们发送回您的服务器“,就是这样)。从服务器上的iPhone恢复Facebook连接会话

我觉得我有什么文件我已经找到一个体面的开始,我的PHP页面的样子:

require_once 'facebook.php'; 
$appapikey = 'key'; 
$appsecret = 'secret'; 
$userid = 'id'; 
$sessionKey = 'key'; 
$facebook = new Facebook($appapikey, $appsecret); 
$facebook->set_user($userid,$sessionKey); 

然而,当我尝试登录到该页面出现以下错误:

Fatal error: Uncaught exception 'FacebookRestClientException' with message 'Session key invalid or no longer valid'

我知道会话是有效的,因为我仍然登录在我的iPhone应用程序。有谁知道如何恢复在Facebook Connect上启动的会话?

谢谢

回答

1

我花了很多时间去寻找答案,但发现它已经:

$this->facebook = new Facebook($appapikey, $appsecret); 
$this->facebook->set_user($fb_id, $sessionKey, null, $sessionSecret); 

只是sessionKey发布sessionSecret到您的服务器,并与set_user API方法使用它

完美的作品:)