Не удается получить идентификатор электронной почты пользователя Yahoo, когда пользователь oAuth использует полимерный веб-компонент - PullRequest
0 голосов
/ 06 мая 2019

Polymerfire (Polymer2.x) веб-компонент firebase-auth не заполняет идентификатор электронной почты в объекте пользователя в signInWithRedirect (поставщик), когда поставщик является Yahoo.

При успешном завершении oAuth я получаю uid и displayName из firebase, но не получаю электронную почту. В моем случае мне нужна электронная почта. Помогите, пожалуйста, по любому отсутствующему разрешению или фрагменту кода, который будет заполнять идентификатор электронной почты для Yahoo. Для всех остальных провайдеров PolymireFire дает мне uid, displayName и email.

В сети разработчиков Yahoo для приложения я добавил разрешения API только для чтения.

Разрешения API

Контакты Чтение - с разрешения вашего пользователя вы можете прочитать информацию о его контактах. Профили (социальный каталог) Публичное чтение - с разрешения вашего пользователя вы можете читать информацию его профиля, которая помечена как общедоступная или предоставлена ​​в Connections.

Вот код входа в PWA:

yahooSignIn() {
    var self = this.$.query;
    console.log('inside login-page yahooLogin()');
    var provider = new firebase.auth.OAuthProvider('yahoo.com');
    provider.addScope('sdct-r');
    return this.$.auth.signInWithRedirect(provider).then(function (result) {
      console.log('result' + JSON.stringify(result));
    });
  }
...