Недавно я пытался заставить мое приложение работать с PHP SDK 3.0, и у меня возникли некоторые проблемы с ним, когда я вошел в систему. У меня есть файл "example.php" из загрузки 3.1.1, который нене подтверждает, что я вошел в систему. Файл «with_js_sdk.php» также не подтверждает, что я вошел в систему при первом запуске.Однако после его запуска и этот файл, и файл «example.php» увидят, что я вошел в систему. Как только я выйду из системы, «example.php» не будет работать, и «with_js_sdk.php» завершится неудачно с первой попытки.выполнить, но при всех последующих запусках оба файла (и некоторые другие файлы, с которыми я проверяю это) будут все аутентифицироваться правильно.Когда не работает, все файлы выдают «OAuthException» с сообщением: «Активный токен доступа должен использоваться для запроса информации о текущем пользователе».даже когда я вошел в систему. Итак, мой вопрос, есть ли что-то в «with_js_sdk.php», что я могу установить в других моих файлах?Я предполагаю, что это как-то связано с "oauth: true" в этом файле из того, что я прочитал, хотя я не эксперт по кодированию в Facebook, поэтому я не уверен.И у меня есть приложение iframe, поэтому в моем приложении нет части "FB.init" (которая работала случайно до изменения sdk).Вот минимальный код, который я тестирую и который выдает ошибку:
<code><?php
require '../src/facebook.php';
$facebook = new Facebook(array(
'appId' => '11111111111111111',
'secret' => 'abcdefghijk etc...',
'cookie'=>true
));
// See if there is a user from a cookie
$user = $facebook->getUser();
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
echo '<pre>'.htmlspecialchars(print_r($e, true)).'
';$ user = null;}}?>
getuser всегда возвращается корректно, но вызов $ facebook-> api ('/ me') всегда завершается неудачей, пока я не запустил файл с fbml.И прежде чем спросить, да, я изменил appID и секрет в файлах.Спасибо.
Дэррил