Новый поток OAuth 2.0 на стороне клиента предоставляет токен доступа со временем expiresIn. Обычно это 1-2 часа. Пользователи, которые играют в игру, могут потратить столько времени на игру, а также они могут играть некоторое время, уходить и возвращаться через 3-4 часа.
Из того, что я могу сказать из документации, я просто должен обрабатывать ошибки от вызовов API, и если токен не работает, перезагрузите браузер. Что ж, это не очень хорошо для игр, потому что это может произойти в критический момент.
Даже если я установлю таймер и снова вызову FB.getLoginStatus (), expiresIn останется прежним, поэтому он явно относительно начального времени входа в систему.
Должны ли игры совершать все вызовы API Facebook заранее, а затем кэшировать все данные? Есть ли способ обновить access_token без перезагрузки веб-страницы?