аттестат: логин Facebook запрашивает разрешение user_friends по умолчанию - PullRequest
0 голосов
/ 04 июля 2018

Я создаю приложение js для узла, которое использует паспорт для входа в Facebook. Я следую инструкциям на https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/ для построения потока.

Мое приложение НЕ требует никаких разрешений, кроме «email» и «public_profile», и я использую аутентификацию по умолчанию, как показано ниже:

app.get('/auth/facebook', passport.authenticate('facebook'));

Однако всплывающее диалоговое окно входа в Facebook по умолчанию добавляет «список друзей» (см. Скриншот ниже).

enter image description here

Я также попытался явно добавить два разрешения по умолчанию, как показано ниже:

app.get('/auth/facebook', passport.authenticate('facebook'), {
        scope: ['email', 'public_profile']
    });

Однако по какой-то причине разрешение 'user_friends' все еще запрашивается (или предлагается?). Согласно политике проверки входа в приложение Facebook (https://developers.facebook.com/docs/facebook-login/permissions), для запроса user_friends требуется процесс проверки приложения Facebook. В чем я не уверен, так это в том, почему он автоматически запрашивает разрешение user_friends, когда оно мне не нужно и не требуется просить об этом. Есть идеи?

1 Ответ

0 голосов
/ 05 сентября 2018

Он автоматически запрашивает разрешение «user_friends», потому что разрешение «user_friends», как и «public_profile» и «email», одобрено по умолчанию. Это означает, что вам не нужно запрашивать это. Но для того, чтобы оно было доступно, когда ваше приложение будет запущено, вам нужно пройти проверку приложения. Поэтому, как и в вашем случае, вам это не нужно, просто не отправляйте его на проверку приложения, и когда ваше приложение будет запущено, оно не будет запрошено пользователю.

...