Как извлечь адрес электронной почты из API входа Google? - PullRequest
1 голос
/ 03 ноября 2019

Я создавал логин Google при создании моего веб-приложения. Там я сохранил опцию входа в Google, но мне нужно знать, что вошедший в систему пользователь является существующим пользователем моего приложения, в противном случае ему придется сначала зарегистрироваться.

Так что мне нужно знать идентификатор электронной почты и сопоставить его с моей базой данных.

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

Вот API-интерфейс google-login, который я использовал:

<! DOCTYPE html>
<html>
    <head>
        <title>
          Google Sign in Page
        </title>
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
        <meta name="google-signin-client_id" content="540496349919-20gn1hjm7i265i27rs9d3dchjv45ni33.apps.googleusercontent.com">
        <script src="https://apis.google.com/js/platform.js" async defer></script>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
        <script src="script.js"></script>
        <style>
           .g-signin2 {
           margin-left: 500px;
           margin-top: 200px;
           }
           .data {
              display: none;
           }
        </style>
    </head>
    <body>
         <div class="g-signin2" data-onsuccess="onsignin"></div> 

Here on log in  I will match the user's email-ID with my database list of email-ID's, if not present, he has to register and be directed to a page(say signup.php), if present, he will be directed to his page(say profile.php)

         <div class="data">
            <button onclick="signout()" class="btn btn-danger"> Sign Out </button>
    </body>

</html>

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

1 Ответ

1 голос
/ 03 ноября 2019

После того как вы вошли в систему с помощью Google с использованием областей по умолчанию, вы можете получить доступ к идентификатору пользователя Google, имени, URL-адресу профиля и адресу электронной почты.

Для полученияИнформация профиля для пользователя, используйте метод getBasicProfile ().

// auth2 is initialized with gapi.auth2.init() and a user is signed in.

    if (auth2.isSignedIn.get()) {
      var profile = 
      auth2.currentUser.get().getBasicProfile();
      console.log('Full Name: ' + profile.getName());
      console.log('Email: ' + profile.getEmail());
    }
...