Как извлечь полную информацию о пользователях с помощью входа в Google одним нажатием? - PullRequest
0 голосов
/ 01 августа 2020

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

 <script>
      window.onload = function () {
        google.accounts.id.initialize({
          client_id: "clientid.apps.googleusercontent.com",
          callback: handleCredentialResponse,
        });
        google.accounts.id.prompt((notification) => {
          if (notification.isNotDisplayed() || notification.isSkippedMoment()) {
            console.log("opted out");
          }
        });
        function handleCredentialResponse(response) {
           console.log(response)
          // window.location = "https://github.com/";
        }
      };
    </script>

здесь это ответ, который я получаю

{
  clientId:
    "clientid.apps.googleusercontent.com",
  credential:
    "eyJhbGciOiJSUzI1NiIsImtpZCI6ImYwNTQxNWIxM2FjYjk1OT…40Jk8v3LcOvtopFD_tI2HMlFjg0dK96XrqNiOD0H3Akl",
  select_by: "user",
};

1 Ответ

0 голосов
/ 01 сентября 2020

Что вы подразумеваете под «полной информацией»?

  1. Идентификационный токен возвращается в поле учетных данных. Маркер id содержит некоторую информацию профиля пользователя, как определено в https://openid.net/specs/openid-connect-core-1_0.html#IDToken. Чтобы проанализировать идентификатор токена, вы можете найти библиотеку по адресу https://openid.net/developers/jwt/ или https://jwt.io/.

  2. Google One Tap не поддержка 1) возврата дополнительной информации профиля в токене идентификатора; 2) загрузите токен доступа, чтобы получить доступ к большему количеству данных профиля пользователя. Вам нужно посмотреть документацию Google OAuth 2.0, чтобы найти способ загрузки токенов доступа.

Таким образом, Google One Tap - это сервис, оптимизированный для базового c сценария аутентификации 3P ios (скажем, вход и регистрация и т. д. c.). Он не охватывает и не хочет охватывать все возможные сценарии OAuth 2.0 ios.

...