我正在測試一些基於example.php的代碼,並且getUser()
返回0,儘管我當前正在FB上登錄。我的index.php頁面上的代碼如下:getUser()總是返回0,即使我登錄了
<?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()返回的」回聲測試返回0。而且即使$loginUrl
被設置爲一個URL,當我點擊它,它只需要我到相同的index.php頁面。
如果我退出FB並重新加載頁面,當我點擊「登錄」時,我會被帶到Facebook登錄到我的應用程序。然後,當我成功登錄後,我回到了index.php頁面,其中包含無效的登錄URL,getUser()繼續返回0.
我昨天剛剛下載了PHP SDK,所以我假設它是最新的。
您是否正在使用最新的php sdk?你是否正確設置了應用程序設置的網站Url? Url在siteUrl和重定向網址應該是一樣的 – Jashwant
@Jashwant,你是什麼意思的重定向網址?我將這個應用程序設置爲「帶有Facebook登錄的網站」,似乎沒有重定向URL的字段。但該網站的網址是正確的。 –
'https:// github.com/facebook/facebook-php-sdk' – Jashwant