Я пытаюсь определить, предоставил ли пользователь доступ к моему приложению и, если да, какие разрешения он имеет. Это НЕ во время начального процесса регистрации, но позже, когда мне нужно проверить, что пользователи не удалили разрешения.Python: проверьте, предоставил ли пользователь Facebook доступ к моему приложению. Сбой «Ошибка HTTP 400: неправильный запрос»
Я бегу следующее:
access_token = "users_access_token"; # saved when user signed up using FB
url = "https://graph.facebook.com/v2.0/me/permissions/?access_token="+access_token
response = urllib2.urlopen(url)
Если пользователь получает доступ, то ответ является строкой JSON с разрешениями. Это то же самое, что я вижу, если я скопирую URL-адрес в браузер.
Однако, если пользователь НЕ предоставил доступ (т.е. удалил мое приложение после первоначальной регистрации), то я получаю сообщение об ошибке: «HTTP Error 400: Bad Request». Но, если я скопирую URL-адрес в мой браузер, тогда я получаю строку json с правильным сообщением об ошибке: «У пользователя нет санкционированного приложения ...» (Если я введу неправильный access_token в URL-адрес браузера, тогда я все еще получаю правильное сообщение об ошибке «Недопустимый токен доступа»)
Итак, как я могу изящно проверить, отменил ли пользователь доступ к моему приложению? Я не хочу получать исключение, а скорее правильный ответ ошибки FB. Кажется, что это должно быть возможно, поскольку оно работает, когда я копирую-вставляю url в браузер.
Обратите внимание, что я вообще не меняю свой код. (. Так что это не то, что URL-адрес имеет неверный формат) Единственное, что изменения является ли пользователь получает доступ к приложению
Отлично! Спасибо. – user984003