В документах для разработчиков на Facebook указано следующее:
Официальные SDK Facebook управляют временем жизни токенов для вас. когда
используя iOS, Android или наш JavaScript SDK, SDK будет обрабатывать создание
убедитесь, что токены обновляются до истечения срока их действия.
(https://developers.facebook.com/docs/facebook-login/access-tokens)
Таким образом, очевидно, что их SDK на стороне клиента активно обрабатывают обновляемые токены до истечения срока их действия, но не SDK на стороне сервера …. (?)
и действительно, у меня есть веб-сайт, который использует их php sdk — и примерно каждые 2 часа я что-то пробую на своем сайте, и мой вызов API приводит к исключению FacebookApiException: «Активный токен доступа должен использоваться для запроса информации о текущий пользователь.» При обновлении страницы токен, по-видимому, обновляется, и API снова вызывает работу.
Почему это или, что более важно, как я могу активно обновлять токены до истечения срока их действия при использовании php sdk (во избежание сбоя страницы у меня раз в 2 часа)? Я бы предпочел не использовать Javascript SDK
Задача ещё не решена.
Других решений пока нет …