Сообщение «Ошибка подтверждения доступа» возникает при использовании Facebook/Messenger в основном двумя группами пользователей; одна из них — обычные пользователи, заходящие в мессенджер, а другая — разработчики, которые позволяют Facebook войти в систему с помощью API.
Сообщение об ошибке в основном связано с процессом безопасности, который Facebook реализует, когда вы получаете доступ к его платформе. Если какой-либо из шагов не завершен, недействителен или истек, вы получите сообщение об ошибке. Поскольку существует два случая, когда пользователи могут столкнуться с этой ошибкой, мы привели два решения.
Что вызывает ошибку Error Validating Access Token на Facebook?
Как уже говорилось, сообщение об ошибке ‘ошибка проверки токена доступа‘ не похоже на другие обычные сообщения об ошибках, с которыми сталкивается конечный пользователь. Причинами этой ошибки являются:
- Сессия в Messenger для вашей учетной записи каким-то образом недействительный или истек срок действия.
- Токен доступа Facebook, который вы используете с API, является истек срок действия. Такое часто случается в среде разработки приложений, поскольку токен доступа действует только ограниченное время, после чего его нужно получить снова (для разработчиков).
- Пользователь изменил пароль или вышел из системы со всех подключенных устройств по соображениям безопасности.
- Facebook намеренно вывел вас из системы мессенджер в целях безопасности.
Что касается приведенного ниже решения для разработчиков, мы предполагаем, что вы знаете основы вызова API, который вы выполняете с использованием маркеров доступа. Если вы совсем новичок в среде разработки, мы рекомендуем прочитать несколько подробных материалов по кодированию, чтобы получить представление о токенах доступа.
Решение 1: Обновление локальных данных мессенджера (при ошибке в мессенджере)
Обычные пользователи могут столкнуться с этим сообщением при попытке войти в мессенджер или при переключении между различными учетными записями. Это не более чем простая ошибка в вашем андроид-устройстве. Ваш смартфон отслеживает все маркеры доступа, связанные с Messenger. Если какой-либо из них станет недействительным или не будет обновлен автоматически, вы можете получить сообщение об ошибке.
Здесь мы обновим данные вашего приложения Messenger. Убедитесь, что у вас под рукой есть имя пользователя и пароль, потому что вас могут попросить ввести их.
- На вашем Android-устройстве откройте Настройки и перейдите в Менеджер приложений.
- Найдите запись Messenger и откройте его.
- Находясь в настройках приложения, выберите Очистить данные очистите данные приложения и кэш.
- Закройте приложение настроек и перезапустите мессенджер, предварительно закрыв приложение. Теперь попробуйте войти в систему и посмотрите, исправлено ли сообщение об ошибке.
Решение 2: Проверка токена доступа с истекшим сроком действия (для разработчиков)
Токены доступа используются приложениями, которые выполняют запросы к API от имени пользователя. В основном, токен доступа представляет собой авторизацию конкретного приложения, поэтому оно может либо разрешить вход в систему, либо получить доступ к некоторой информации пользователя.
Если вы используете Facebook API и токены доступа по самым простым причинам (например, используете Facebook для проверки процесса регистрации в вашем приложении), убедитесь, что срок действия токена не истек. Обычно срок действия токенов Facebook истекает в течение 2 часов после того, как они были запрошены с сервера Facebook. Вы можете ознакомиться с официальной документацией по How-To: Работа с просроченными токенами доступа самим Facebook.
Примечание: В некоторых случаях в среде разработки у пользователей Снимите разрешение offline_accesразрешение включено. В некоторых случаях это приводит к истечению срока действия токена, даже если он не просрочен. Убедитесь, что вы отключили эти опции.
Вы также можете попробовать получить разрешение на offline_access так вы можете получить токен, срок действия которого не истечет, что приведет к проблемам.