Получите имя пользователя и адрес электронной почты после федеративного входа в AWS с помощью Google - PullRequest
0 голосов
/ 09 июля 2019

Я использую aws-усиление для входа моих пользователей на мой сайт. Я использую

Auth.federatedSignIn({provider: 'Google'});

для входа в систему. Когда они перебирают свою электронную почту, они добавляются в пул пользователей, где их имя пользователя выглядит примерно так:

Google_12345678901234567890

и их адрес электронной почты и имя находятся внутри профиля, когда вы нажимаете на это имя пользователя Google в пуле пользователей. Как я могу получить доступ к имени пользователя и электронной почте через мой угловой код?

Я пробовал

Auth.currentAuthenticatedUser()

и

Auth.currentSession()

оба из которых не содержат эту информацию, наряду с Auth.currentUserInfo() который возвращает пустой, и

Auth.userAttributes()

который, похоже, не работает. Любые идеи очень приветствуются. Спасибо!

1 Ответ

0 голосов
/ 09 июля 2019

Я как бы ответил на свой вопрос.После аутентификации с помощью

Auth.federatedSignIn({provider: 'Google'});

я запустил следующий код:

Auth.currentSession()
    .then(data => {
        let idToken = data.getIdToken();
        console.dir(idToken);
        let email = idToken.payload.email;
        console.log(email);
    })
    .catch(err => console.log(err));

Вся информация хранится в токене id и может быть просмотрена с помощью

console.dir(idToken);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...