#facebook #facebook-graph-api #passport.js #passport-facebook
#Facebook #facebook-graph-api #passport.js #паспорт-facebook
Вопрос:
Я использую passport-facebook для аутентификации пользователя через facebook. Ранее у меня была область [ 'public_profile', 'email' ]
, но недавно добавленная user_friends
.
Теперь все существующие пользователи сталкиваются с интересной проблемой… они вынуждены предоставлять доступ к user_friends, снятие флажка не позволяет им продолжать вход в систему.
В принципе, если вы новый пользователь, вы можете редактировать разрешения, public_profile
если они требуются. Вы можете отклонить email / user_friends, продолжить и никогда не получать повторный запрос, если вы не используете auth-type: "rerequest"
.
Однако, если существующий пользователь входит в систему, facebook проверяет, были ли запрошены все элементы в области (в данном случае user_friends
нет). Затем он отображает диалоговое окно с разрешением друзей, но скрывает остальные 2, поскольку они уже были запрошены. (см. Прикрепленное изображение).
Facebook требует public_profile
, чтобы это было проверено изначально, но поскольку оно уже было предоставлено, в конечном итоге требуется user_friends
разрешение для существующих пользователей. Похоже, это ошибка на стороне facebook…
Вот скриншот:
Комментарии:
1. Что происходит, когда вы нажимаете «Отмена» — приводит ли это к ошибке, или процесс входа в систему продолжается в обычном режиме и приводит к маркеру доступа только с ранее предоставленными разрешениями?
2. В результате пользователь отменяет запрос и возвращается на страницу входа (без токена доступа)
3. Затем отправьте отчет об ошибке. developers.facebook.com/bugs