我读了很多和我的问题有关的问题。然而,我不能解决它。尽管我登录了,但来自Facebook-php-sdk
的getUser()
始终返回0。在我的日志中:
Invalid or no certificate authority found, using bundled information
我在BaseFacebook::$CURL_OPTS
中添加了"CURLOPT_SSL_VERIFYPEER => FALSE
“。然而,它并不起作用。
我的代码:
<?php
try {
$facebook = new Social\Facebook ();
$user_fb_id = $facebook->getUser();
if ($user_fb_id) {
//do something
} else {
$params = array(
'scope' => 'email, user_activities, read_stream, publish_stream, user_birthday, user_likes',
//'display' => 'touch',
'redirect_uri' => Uri::base(false) . 'userjob/login?url=' . $url
);
$login_url = $facebook->getLoginUrl($params);
Response::redirect($login_url);
}
}
catch (Exception $e) {
echo "Error";
echo $e->getMessage();
die();
}
顺便说一下,我使用PHP5.3.2 (MAMP 1.9, MAC OS 10.7.5)
,上面的代码在其他计算机上运行良好,并在本地主机上与Facebook连接。然而,它在我的计算机上失败了。
Update: (Solved)
感谢大家对我的帮助!问题出在我的hosts文件上。我清除了一些与Facebook相关的旧it,它起作用了!
发布于 2014-02-26 20:16:57
看看这里被接受的答案:Facebook application development using PHP SDK
你好像错过了FB证书文件。
https://stackoverflow.com/questions/22040853
复制相似问题