当我运行此代码时,我的cookie已经清除,并且我没有登录到facebook。它将我定向到facebook,然后我登录,但是当它带我回到我的页面时,它是相同的,应该显示给我个人资料图片,等等。
我似乎已经缩小了$ user的return语句的问题,因为它返回0。
我需要做些什么更改才能使它从Facebook登录后返回,它将显示个人资料图片,依此类推...
<?php
require_once 'libs/facebook.php';
require 'connections/connection.php';
// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
'appId' => 'xxxxxxxxxxxxx',
'secret' => 'xxxxxxxxxxxxxxxx',
));
// Get User ID
$user = $facebook->getUser();
echo $user;
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_profile = $facebook->api('/me');
echo $user;
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
// Login or logout url will be needed depending on current user state.
if ($user) {
//$logoutUrl = $facebook->getLogoutUrl();
$logoutUrl = $facebook->getLogoutUrl(array('next' => ($fbconfig['baseurl'] . 'logout.php')));
} else {
$statusUrl = $facebook->getLoginStatusUrl();
$loginUrl = $facebook->getLoginUrl(array(
'scope' => 'user_about_me',
'scope' => 'read_friendlists'
));
}
?>
不用担心我的朋友,您没有做错任何事情。我的DEMO应用程序遇到了同样的问题,一直运行到昨天。
我确定您在获取访问令牌方面也遇到了问题。我认为问题仅在于PHP SDK,因此可能会在一段时间后解决。
解决方案:在尝试了此问题的许多解决方案后,此方法对我有用。
在base_facebook.php文件中,找到makeRequest()方法并检查以下行。
$opts = self::$CURL_OPTS;
紧随其后,添加此行
$opts[CURLOPT_SSL_VERIFYPEER] = false;
可以在此处找到更多详细信息-http://net.tutsplus.com/tutorials/php/how-to-authenticate-your-users-with-facebook-connect/
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句