Как проверить токен доступа и получить новый, если он недействителен? - PullRequest
0 голосов
/ 30 сентября 2011

Мое приложение работает нормально, и все в порядке, но когда пользователь вышел из системы, или вернулся через два часа, или изменил свой пароль, или удалил приложение, а затем попытался добавить его снова, я получаю такую ​​ошибку с причинойкаждая ошибка:

Fatal error: Uncaught OAuthException: Error validating access token: The session is invalid because the user logged out. thrown in /home/user/public_html/new_fb_app/src/base_facebook.php on line 1028

Кроме того, если я попытался обновить после появления этой ошибки, приложение будет работать нормально.Поэтому я думаю, что это как-то связано с тем, что приложение пыталось работать с последним токеном доступа (который был недействительным).

Это мой код:

<code><?php
$user = null; //facebook user uid
try{
include_once "src/facebook.php";
}
catch(Exception $o){
echo '<pre>';
print_r($o);
echo '
';} // Создайте наш экземпляр приложения (замените его на appId и secret).$ facebook = новый Facebook (массив ('appId' => 'my appId', 'secret' => 'секрет моего приложения', 'fileUpload' => true));// Получить идентификатор пользователя $ user = $ facebook-> getUser ();$ loginUrl = $ facebook-> getLoginUrl (массив ('scope' => 'read_stream, publish_stream, photo_upload, user_photos'));if ($ user) {try {// Продолжайте, зная, что вы вошли в систему пользователя, который прошел аутентификацию.$ access_token = $ facebook-> getAccessToken ();} catch (FacebookApiException $ e) {// вы должны использовать error_log ($ e);вместо печати информации в браузере d ($ e);// d - функция отладки, определенная в конце этого файла $ user = null;}} if (! $ user) {echo "

1 Ответ

0 голосов
/ 30 сентября 2011

Очистить куки или сеансы, когда пользователь выходит из системы?

...