Я тестирую некоторый код на основе 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() return» возвращает 0. И хотя $loginUrl
установлен на URL-адрес, когда я нажимаю на него, я просто переношу меня на ту же страницу index.php.
Если я выхожу из FB и перезагружаю страницу, когда я нажимаю «Войти», я попадаю на Facebook, чтобы войти в свое приложение. Затем, когда я успешно вошел в систему, я возвращаюсь на страницу index.php с неработающим URL-адресом для входа, а getUser() продолжает возвращать 0.
Я только что загрузил PHP SDK вчера, поэтому я предполагаю, что он актуален.
getUser()
возвращает мой UserID. Я не понимаю, почему; между этими двумя приложениями нет никакой разницы, кроме их названий. И я предоставил разрешения обоим приложениям. Но это пока работает. - person Joshua Sorkin   schedule 29.05.2012