我正在测试一些基于example.php的代码,getUser()
返回0,即使我当前已登录FB。我的index.php页面上的代码如下:
<?php
include 'fbLibrary/facebook.php';
$facebook=new Facebook(array(
'appId' => 'myAppID',
'secret' => 'mySecret',
'cookie' => true
));
$user=$facebook->getUser();
echo "getUser() returned " . $user . "<p>";
if ($user)
{
//fb query
try
{
$me=$facebook->api('/me');
print_r($me);
}
catch (FacebookApiException $e)
{
echo $e->getMessage();
}
}
if ($me)
{
$logoutUrl=$facebook->getLogoutUrl();
echo "<a href='$logoutUrl'>Logout</a>";
}
else
{
$loginUrl=$facebook->getLoginUrl(array(
'scope' => 'friends_status,publish_stream'
));
echo "<a href='$loginUrl'>Login</a>";
}
?>
当我进入index.php页面时,“getUser()返回”echo test返回0.即使$loginUrl
设置为URL,当我点击它时,它只需要我相同的index.php页面。
如果我退出FB并重新加载页面,当我点击“登录”时,我会被带到Facebook登录我的应用程序。然后,当我成功登录时,我回到了index.php页面,其中包含无效的登录URL,并且getUser()继续返回0。
我昨天刚下载了PHP SDK,所以我认为它是最新的。
答案 0 :(得分:0)
然后你可以设置FB Class的参数域。像这样:
<?php
$facebook = new Facebook(array(
'appId' => APP_ID,//$app_id,
'secret' => APP_SECRET,//$app_secret,
'cookie' => true,
'domain'=>'xxxdomain.com',
));
$session = $facebook->getUser();