Используя base_facebook.php
и facebook.php
Я забыл определить область и запустил это:
$app_id = "11111111111";
$app_secret = "aaaaaaaaaaaaaaaa";
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
if(!($facebook->getUser()))
{
header("Location:{$facebook->getLoginUrl(array('req_perms' => 'user_status,publish_stream,user_photos'))}");
exit;
}
Редактировать Я изменил строку заголовка на следующую без удачи:
header('Location:'.$facebook->getLoginUrl(array('req_perms' => $scope)));
Первый раз, когда я посетил страницу, меня перенаправили в место, где меня попросили принять это приложение.Я сделал, а все остальное работало правильно.
Теперь я понимаю, что мне нужно было определить область действия, поэтому я добавил строку, разделенную запятыми, например user_checkins
, но обновление страницы не требует дополнительного согласия,и при этом это не позволяет мне видеть мои чекины.
$scope = 'user_checkins,user_likes';
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true,
'scope' => $scope
));
Я пропускаю что-то тривиальное?Я попытался сбросить секрет приложения, но ничего не получилось.Также я не могу найти приличный учебник: (
Спасибо заранее!
Ответ : Добавление scope
в new Facebook()
ничего не делает! Ошибкабыло то, что с помощью getLoginUrl () прошло req_perms
и необходимо передать scope
:
header('Location:'.$facebook->getLoginUrl(array('scope' => $scope)));