【发布时间】:2010-09-14 21:01:02
【问题描述】:
我正在使用以下 2 个 API 创建一个 facebook 连接,但在获取 PHP SDK 的会话时遇到了问题。我已经下载了最新的 facebook-connect-js & facebook-php-sdk
这是我最初使用 JS 连接的 FB.init 没问题,即。
<script>
// initialize the library with the API key
FB.init({
apiKey: '9999999999999999999999999999',
session : <?php echo json_encode($session); ?>,
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
$('#login').bind('click', function() {
FB.login(handleSessionResponse);
});
我可以通过使用以下脚本重新加载页面来测试它是否工作,我可以看到响应会话。
FB.getLoginStatus(function(response) {
if (response.session) {
console.log(response.session)
} else {
// no user session available, someone you dont know
}
});
但是 PHP SDK 没有接听会话。
即
$facebook = new Facebook(array(
'appId' => '9999999999999999',
'secret' => '9999999999999999999999999999999',
'cookie' => true,
));
$session = $facebook->getSession();
javascript 正在创建一个 cookie,但会话没有找到它。
对我做错的任何建议。
希望你能帮忙。
【问题讨论】:
-
你检查过你的回调地址吗?它需要指向它的来源,以便您的服务器知道创建会话。