Dokumentacja API Sign In with Google HTML API

Na tej stronie referencyjnej opisano interfejs API funkcji Zaloguj się przez Google oparty na danych HTML. Za pomocą interfejsu API możesz wyświetlić na swojej stronie internetowej żądanie jednym dotknięciem lub przycisk Zaloguj się przez Google.

Element o identyfikatorze „g_id_onload”

Atrybuty danych z funkcji Zaloguj się przez Google możesz umieszczać w dowolnym widocznym lub niewidocznym miejscu, np. <div> i <span>. Jedynym wymaganiem jest ustawienie identyfikatora elementu na wartość g_id_onload. Nie umieszczaj tego identyfikatora na wielu elementach.

Atrybuty danych

Poniższa tabela zawiera atrybuty danych wraz z opisami:

Atrybut
data-client_id Identyfikator klienta aplikacji
data-auto_prompt Wyświetl Google One.
data-auto_select Włącza automatyczny wybór w Google One Tap.
data-login_uri URL punktu końcowego logowania
data-callback Nazwa funkcji modułu obsługi tokena JavaScript
data-native_login_uri URL punktu końcowego modułu obsługi danych logowania
data-native_callback Nazwa funkcji obsługi danych logowania do hasła JavaScript
data-native_id_param Nazwa parametru w wartości credential.id
data-native_password_param Nazwa parametru w wartości credential.password
data-cancel_on_tap_outside Określa, czy anulować powiadomienie, jeśli użytkownik kliknie powiadomienie poza polem.
data-prompt_parent_id Identyfikator DOM elementu kontenera One Touch
data-skip_prompt_cookie Pomija jedno kliknięcie, jeśli określony plik cookie nie jest pusty.
data-nonce Losowy ciąg tokenów tożsamości
data-context Tytuł i słowa w komunikacie jednym dotknięciem
data-moment_callback Nazwa funkcji detektora powiadomień o stanie interfejsu
data-state_cookie_domain Jeśli musisz wywołać tryb jednego kliknięcia w domenie nadrzędnej i jej subdomenach, przekaż domenę nadrzędną do tego atrybutu, aby był używany jeden udostępniony plik cookie.
data-ux_mode Proces logowania się za pomocą przycisku Zaloguj się przez Google
data-allowed_parent_origin Źródła, które mogą umieszczać pośredni element iframe. Jeśli ten atrybut występuje, jedno dotknięcie zadziała w pośrednim trybie elementu iframe.
data-intermediate_iframe_close_callback Zastępuje domyślne pośrednie elementy iframe, gdy użytkownik ręcznie zamyka jedno dotknięcie.
data-itp_support Włącza UX One Touch w przeglądarkach ITP.

Typy atrybutów

W poniższych sekcjach znajdziesz szczegółowe informacje o typach atrybutów i ich przykłady.

data-client_id,

Ten atrybut to identyfikator klienta aplikacji. Można go znaleźć i utworzyć w Konsoli Google Developers. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Tak data-client_id="CLIENT_ID.apps.googleusercontent.com"

data-auto_prompt

Ten atrybut określa, czy wyświetlać jedno kliknięcie. Wartością domyślną jest true. Kliknięcie w Google One nie będzie widoczne, gdy ta wartość to false. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
wartość logiczna Opcjonalnie data-auto_prompt="true"

wybór danych automatycznie

Ten atrybut określa, czy token tożsamości ma być zwracany automatycznie, bez interakcji użytkownika, jeśli aplikacja została zatwierdzona tylko w jednej sesji Google. Wartość domyślna to false. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
wartość logiczna Opcjonalnie data-auto_select="true"

data-login_uri

Ten atrybut to identyfikator URI punktu końcowego logowania.

Wartość musi być zgodna z jednym z autoryzowanych identyfikatorów URI przekierowania klienta OAuth 2.0, które zostały skonfigurowane w konsoli API i muszą być zgodne z naszymi regułami weryfikacji identyfikatora URI przekierowania.

Możesz go pominąć, jeśli bieżąca strona logowania jest Twoją stroną, na której w tym przypadku dane logowania są domyślnie publikowane na tej stronie.

Odpowiedź dotycząca identyfikatora tokena tokena jest publikowana w punkcie końcowym logowania, gdy nie ma zdefiniowanej funkcji wywołania zwrotnego, a użytkownik klika przycisk Zaloguj się przez Google lub One Touch albo następuje automatyczne zalogowanie.

Więcej informacji znajdziesz w tej tabeli:

Typ Opcjonalnie Przykład
URL Domyślnie odpowiada identyfikatorowi URI bieżącej strony lub określonej przez Ciebie wartości.
Ignorujesz, gdy data-ux_mode="popup" i data-callback są ustawione.
data-login_uri="https://www.example.com/login"

Punkt końcowy logowania musi obsługiwać żądania POST zawierające klucz credential z wartością tokena identyfikatora w treści.

Oto przykładowe żądanie do punktu końcowego logowania:

POST /login HTTP/1.1
Host: www.example.com
Content-Type: application/x-www-form-urlencoded

credential=ID_TOKEN

wywołanie zwrotne danych

Ten atrybut to nazwa funkcji JavaScript, która obsługuje zwracany token identyfikatora. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Wymagany, jeśli nie ustawiono data-login_uri. data-callback="handleToken"

Możesz użyć jednego z atrybutów data-login_uri lub data-callback. Zależy to od następujących konfiguracji komponentu i trybu UX:

  • Atrybut data-login_uri jest wymagany w przypadku przycisku Zaloguj się przez Google redirect w trybie UX, który ignoruje atrybut data-callback.

  • Jeden z tych atrybutów musi być ustawiony w Google One Tap i przycisku logowania popup w Google. Jeśli obie te wartości są ustawione, atrybut data-callback ma wyższy priorytet.

Funkcje JavaScript w przestrzeni nazw nie są obsługiwane przez interfejs API HTML. Zamiast tego używaj globalnej funkcji JavaScriptu bez przestrzeni nazw. Na przykład użyj mylibCallback zamiast mylib.callback.

data-native_login_uri

Ten atrybut to adres URL punktu końcowego modułu obsługi danych logowania. Jeśli ustawisz atrybut data-native_login_uri lub data-native_callback, w przypadku braku sesji Google biblioteka JavaScript wraca do natywnego menedżera danych logowania. Nie możesz ustawiać atrybutów data-native_callback i data-native_login_uri. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-login_uri="https://www.example.com/password_login"

wywołanie natywne data-data

Ten atrybut to nazwa funkcji JavaScript, która obsługuje dane logowania do hasła otrzymane od natywnego menedżera danych przeglądarki. Jeśli ustawisz atrybut data-native_login_uri lub data-native_callback, w przypadku braku sesji Google biblioteka JavaScript wraca do natywnego menedżera danych logowania. Nie możesz ustawiać właściwości data-native_callback i data-native_login_uri. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
tekst Opcjonalnie data-native_callback="handlePasswordCredential"

Funkcje JavaScript w przestrzeni nazw nie są obsługiwane przez interfejs API HTML. Zamiast tego używaj globalnej funkcji JavaScriptu bez przestrzeni nazw. Na przykład użyj mylibCallback zamiast mylib.callback.

data-native_id_param

Przesyłając dane logowania do hasła do modułu obsługi haseł, możesz określić nazwę parametru w polu credential.id. Domyślna nazwa to email. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
URL Opcjonalnie data-native_id_param="user_id"

data-native_password_param,

Przesyłając dane logowania do hasła do modułu obsługi haseł, możesz określić nazwę parametru dla wartości credential.password. Nazwa domyślna to password. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
URL Opcjonalnie data-native_password_param="pwd"

data-cancel_on_tap_outside,

Ten atrybut określa, czy anulować żądanie 1 kliknięciem, jeśli użytkownik kliknie tekst poza zachętą. Wartością domyślną jest true. Aby go wyłączyć, ustaw wartość na false. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
wartość logiczna Opcjonalnie data-cancel_on_tap_outside="false"

data-prompt_parent_id,

Ten atrybut ustawia identyfikator DOM elementu kontenera. Jeśli zasada nie jest skonfigurowana, w prawym górnym rogu okna wyświetla się komunikat. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-prompt_parent_id="parent_id"

Ten atrybut pomija jedno dotknięcie, jeśli określony plik cookie nie zawiera pustej wartości. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
tekst Opcjonalnie data-skip_prompt_cookie="SID"

wartość jednorazowa

Jest to losowy ciąg znaków używany przez token identyfikatora do zapobiegania ponownym atakom. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-nonce="biaqbm70g23"

Długość jednorazowa jest ograniczona do maksymalnego rozmiaru tokena JWT obsługiwanego przez Twoje środowisko, a także w przypadku ograniczeń rozmiaru poszczególnych przeglądarek i serwerów HTTP.

kontekst danych

Ten atrybut zmienia tytuł i wiadomości wyświetlane w komunikacie One Tap. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-context="use"

W tabeli poniżej znajdziesz dostępne konteksty i ich opisy:

kontekst,
signin „Zaloguj się przez Google”
signup „Zarejestruj się z Google”
use „Używaj z Google”

wywołanie zwrotne danych

Ten atrybut to nazwa funkcji list odbiorców powiadomień o stanie interfejsu. Więcej informacji znajdziesz w informacjach o typie danych PromptMomentNotification. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-moment_callback="logMomentNotification"

Funkcje JavaScript w przestrzeni nazw nie są obsługiwane przez interfejs API HTML. Zamiast tego używaj globalnej funkcji JavaScriptu bez przestrzeni nazw. Na przykład użyj mylibCallback zamiast mylib.callback.

Jeśli chcesz wyświetlić informacje o dotknięciu jednym kliknięciem w domenie nadrzędnej i jej subdomenach, przekaż domenę nadrzędną do tego atrybutu, tak aby był w niej używany jeden plik cookie stanu wspólnego. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-state_cookie_domain="example.com"

tryb-ux_mode

Ten atrybut określa procedurę UX używaną przez przycisk Zaloguj się przez Google. Wartością domyślną jest popup. Ten atrybut nie ma wpływu na wygodę korzystania z One Tap. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-ux_mode="redirect"

W tabeli poniżej znajdziesz dostępne tryby UX i ich opisy.

Tryb UX
popup Wykonuje procedurę logowania w wyskakującym okienku.
redirect Przeprowadza proces logowania UX przez pełne przekierowanie na stronę.

data-allowed_parent_origin,

Źródła, które mogą umieszczać pośredni element iframe. Jeśli ten atrybut występuje, jedno dotknięcie zadziała w pośrednim trybie elementu iframe. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
Ciąg tekstowy Opcjonalnie data-allowed_parent_origin="https://example.com"

W tabeli poniżej znajdziesz listę obsługiwanych typów wartości i ich opisów.

Typy wartości
string Identyfikator URI pojedynczej domeny. „https://example.com”
string array Lista identyfikatorów URI domen rozdzielonych przecinkami. „https://wiadomości.example.com,https://lokalny.example.com”

Jeśli wartość atrybutu data-allowed_parent_origin jest nieprawidłowa, inicjacja pośredniego trybu elementu iframe zakończy się niepowodzeniem i zatrzyma się.

Obsługiwane są też prefiksy z symbolami wieloznacznymi. Na przykład domena "https://*.example.com" będzie pasować do example.com i jej subdomen na wszystkich poziomach (np.news.example.com, login.news.example.com). O czym warto pamiętać, używając symboli wieloznacznych:

  • Ciągi znaków wzorca nie mogą składać się tylko z symbolu wieloznacznego i domeny najwyższego poziomu. Na przykład pola https://*.com i https://*.co.uk są nieprawidłowe. Jak wspomnieliśmy wcześniej, ciąg "https://*.example.com" będzie pasować do example.com i jej subdomen. Możesz też użyć listy rozdzielonej przecinkami, aby wskazać 2 różne domeny. Na przykład domena "https://example1.com,https://*.example2.com" będzie pasować do domen example1.com, example2.com i subdomen domeny example2.com
  • Domeny zawierające symbole wieloznaczne muszą zaczynać się od bezpiecznego schematu https://. Numer "*.example.com" zostanie uznany za nieprawidłowy.

wywołanie pośrednie_elementu_iframe_close_callback

Powoduje zastąpienie domyślnego działania pośredniego elementu iframe, gdy użytkownik ręcznie zamknie Jedno dotknięcie, klikając w interfejsie użytkownika przycisk „X”. Domyślnym zachowaniem jest natychmiastowe usunięcie pośredniego elementu iframe z DOM.

Pole data-intermediate_iframe_close_callback działa tylko w średnim trybie elementu iframe. Ma ono wpływ tylko na pośredni element iframe, a nie na element iframe One. Interfejs One Tap jest usuwany przed wywołaniem wywołania zwrotnego.

Typ Wymagany Przykład
funkcja Opcjonalnie data-intermediate_iframe_close_callback="logBeforeClose"

Funkcje JavaScript w przestrzeni nazw nie są obsługiwane przez interfejs API HTML. Zamiast tego używaj globalnej funkcji JavaScriptu bez przestrzeni nazw. Na przykład użyj mylibCallback zamiast mylib.callback.

pomoc-itp_data

To pole określa, czy uaktualniona wersja UX One powinna być włączona w przeglądarkach, które obsługują Intelligent Tracking Prevention (ITP). Wartością domyślną jest false. Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
wartość logiczna Opcjonalnie data-itp_support="true"

Element z klasą „g_id_signin”

Jeśli dodasz g_id_signin do atrybutu class elementu, będzie on renderowany jako przycisk Zaloguj się przez Google.

Na jednej stronie można renderować wiele przycisków Zaloguj się przez Google. Każdy przycisk może mieć własne ustawienia wizualne. Ustawienia są definiowane za pomocą poniższych atrybutów danych.

Atrybuty danych wizualnych

W tabeli poniżej znajdziesz atrybuty danych wizualnych i ich opisy:

Atrybut
data-type Typ przycisku: ikona lub przycisk standardowy.
data-theme Motyw przycisku. na przykład filled_blue lub filled_black.
data-size Rozmiar przycisku. Na przykład małe lub duże.
data-text Tekst przycisku. Na przykład „Zaloguj się przez Google” lub „Zarejestruj się przez Google”.
data-shape Kształt przycisku. np. prostokątny lub okrągły.
data-logo_alignment Wyrównanie logo Google: do lewej lub do środka.
data-width Szerokość przycisku w pikselach.
data-locale Tekst przycisku jest wyświetlany w języku ustawionym w tym atrybucie.
data-click_listener Jeśli skonfigurujesz tę funkcję, po kliknięciu przycisku Zaloguj się przez Google będzie ona wywoływana.

Typy atrybutów

W poniższych sekcjach znajdziesz szczegółowe informacje o typach atrybutów i ich przykłady.

data-type

Typ przycisku. Wartością domyślną jest standard. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
tekst Tak data-type="icon"

W tabeli poniżej znajdziesz dostępne typy przycisków i ich opisy:

Typ
standard Przycisk z tekstem lub spersonalizowanymi informacjami:
icon Przycisk ikony bez tekstu:

motyw-danych

Motyw przycisku. Wartością domyślną jest outline. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
tekst Opcjonalnie data-theme="filled_blue"

W tabeli znajdziesz dostępne motywy i ich opisy:

Motyw
outline Standardowy przycisk:
Standardowy przycisk na białym tle Przycisk ikony na białym tle Spersonalizowany przycisk na białym tle
filled_blue Motyw niebieskiego przycisku:
Standardowy przycisk na niebieskim tle Przycisk ikony na niebieskim tle Spersonalizowany przycisk z niebieskim tłem
filled_black Motyw czarnego przycisku:
Standardowy przycisk na czarnym tle Przycisk ikony na czarnym tle Spersonalizowany przycisk z czarnym tłem

data-size

Rozmiar przycisku. Wartością domyślną jest large. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
tekst Opcjonalnie data-size="small"

W tabeli poniżej znajdziesz dostępne rozmiary przycisków i ich opisy.

Rozmiar
large Duży przycisk:
Duży przycisk standardowy Duży przycisk z ikoną Duży, spersonalizowany przycisk
medium Przycisk średniej wielkości:
Przycisk średnio standardowy Przycisk średniej ikony
small Mały przycisk:
Mały przycisk Mały przycisk z ikoną

tekst-danych

Tekst przycisku. Wartością domyślną jest signin_with. Tekst przycisków z różnymi atrybutami data-text nie różni się wizualnie od przycisków. Jedynym wyjątkiem jest odczytywanie tekstu na potrzeby ułatwień dostępu na ekranie.

Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-text="signup_with"

W tabeli poniżej znajdziesz dostępne teksty przycisków i ich opisy:

Tekst
signin_with Tekst przycisku to „Zaloguj się przez Google”:
Standardowy przycisk „Zaloguj się przez Google” Przycisk ikony bez widocznego tekstu
signup_with Tekst przycisku to „Zarejestruj się w Google”:
Standardowy przycisk „Zarejestruj się z Google” Przycisk ikony bez widocznego tekstu
continue_with Tekst przycisku to „Kontynuuj z Google”:
Standardowy przycisk „Kontynuuj z Google” Przycisk ikony bez widocznego tekstu
signin Tekst przycisku to „Zaloguj się”:
Standardowy przycisk „Zaloguj się”. Przycisk ikony bez widocznego tekstu

kształt danych

Kształt przycisku. Wartością domyślną jest rectangular. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
tekst Opcjonalnie data-shape="rectangular"

W tabeli poniżej znajdziesz dostępne kształty przycisków i ich opisy:

Kształt
rectangular Prostokątny przycisk. W przypadku przycisku icon działa tak samo jak square.
Prostokątny przycisk standardowy Prostokątny przycisk z ikoną Prostokątny przycisk spersonalizowany
pill Przycisk w kształcie pigułki. Jeśli jest używany z przyciskiem icon, działa tak samo jak circle.
Standardowy przycisk w kształcie pigułki Przycisk w kształcie pigułki Przycisk spersonalizowany w kształcie pigułki
circle Przycisk w kształcie okręgu. Jeśli jest używany z przyciskiem standard, działa tak samo jak pill.
Standardowy okrągły przycisk Przycisk okrągłej ikony Okrągły przycisk spersonalizowany
square Kwadratowy przycisk Jeśli jest używany z przyciskiem standard, działa tak samo jak rectangular.
Kwadratowy standardowy przycisk Przycisk w postaci kwadratowej ikony Kwadratowy przycisk spersonalizowany

data-logo_alignment,

Wyrównanie logo Google. Wartością domyślną jest left. Ten atrybut dotyczy tylko typu przycisku standard. Więcej informacji znajdziesz w tabeli poniżej:

Typ Wymagany Przykład
tekst Opcjonalnie data-logo_alignment="center"

W tabeli poniżej znajdziesz dostępne wyrównania i ich opisy:

wyrównanie_logo
left Logo zawiera logo wyrównane do lewej:
Standardowy przycisk z logo G po lewej stronie
center Wyrównuje logo Google do środka:
Standardowy przycisk z logo G pośrodku

szerokość-danych

Minimalna szerokość przycisku w pikselach. Maksymalna szerokość to 400 pikseli.

Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-width=400

dane-lokalne

Opcjonalnie. Wyświetlaj tekst przycisku w określonym języku. W przeciwnym razie domyślnie wyświetlają się ustawienia konta Google lub przeglądarki użytkownika. Dodaj parametr hl i kod języka do dyrektywy src podczas wczytywania biblioteki, na przykład gsi/client?hl=<iso-639-code>.

Jeśli zasada nie jest skonfigurowana, używane jest domyślne ustawienie przeglądarki lub sesja Google użytkownika. Różni użytkownicy mogą mieć różne wersje zlokalizowanych przycisków, a nawet ich różne rozmiary.

Więcej informacji znajdziesz w tej tabeli:

Typ Wymagany Przykład
tekst Opcjonalnie data-locale="zh_CN"

kliknięcie_listy_odbiorców

Możesz zdefiniować funkcję JavaScript, która będzie wywoływana po kliknięciu przycisku Zaloguj się przez Google za pomocą atrybutu click_listener.

  google.accounts.id.renderButton(document.getElementById("signinDiv"), {
      theme: 'outline',
      size: 'large',
      click_listener: onClickHandler
    });

  
  function onClickHandler(){
    console.log("Sign in with Google button clicked...")
  }
  

W powyższym przykładzie po kliknięciu przycisku Zaloguj się przez Google w konsoli będzie wyświetlany komunikat Kliknięcie przycisku Zaloguj się przez Google....

Integracja po stronie serwera

Twoje punkty końcowe po stronie serwera muszą obsługiwać wymienione niżej żądania HTTP POST.

Punkt końcowy modułu obsługi tokena

Punkt końcowy modułu obsługi tokena jest przetwarzany przez identyfikator. W zależności od stanu odpowiedniego konta możesz zalogować użytkownika i kierować go na stronę rejestracji lub kierować użytkowników na stronę łączącą konto, aby uzyskać dodatkowe informacje.

Żądanie HTTP POST zawiera te informacje:

Format Nazwa Opis
Plik cookie g_csrf_token Losowy ciąg znaków, który zmienia się wraz z każdym żądaniem do punktu końcowego modułu obsługi.
Parametr żądania g_csrf_token Ciąg tekstowy, który jest taki sam jak poprzednia wartość pliku cookie, g_csrf_token.
Parametr żądania credential Token tożsamości wydany przez Google.
Parametr żądania select_by Sposób wyboru danych logowania.

dane logowania

Po dekodowaniu token wygląda tak:

header
{
  "alg": "RS256",
  "kid": "f05415b13acb9590f70df862765c655f5a7a019e", // JWT signature
  "typ": "JWT"
}
payload
{
  "iss": "https://accounts.google.com", // The JWT's issuer
  "nbf":  161803398874,
  "aud": "314159265-pi.apps.googleusercontent.com", // Your server's client ID
  "sub": "3141592653589793238", // The unique ID of the user's Google Account
  "hd": "gmail.com", // If present, the host domain of the user's GSuite email address
  "email": "elisa.g.beckett@gmail.com", // The user's email address
  "email_verified": true, // true, if Google has verified the email address
  "azp": "314159265-pi.apps.googleusercontent.com",
  "name": "Elisa Beckett",
                            // If present, a URL to user's profile picture
  "picture": "https://lh3.googleusercontent.com/a-/e2718281828459045235360uler",
  "given_name": "Eliza",
  "family_name": "Beckett",
  "iat": 1596474000, // Unix timestamp of the assertion's creation time
  "exp": 1596477600, // Unix timestamp of the assertion's expiration time
  "jti": "abc161803398874def"
}

Pole sub zawiera globalnie unikalny identyfikator konta Google.

Używając pól email, email_verified i hd, możesz sprawdzić, czy host Google jest wiarygodny dla adresu e-mail. W sytuacjach, gdy Google jest wiarygodnym właścicielem, wiadomo, że użytkownik jest prawowitym właścicielem konta.

Przypadki, w których Google jest wiarygodny:

  • email ma sufiks @gmail.com, jest to konto Gmail.
  • email_verified ma wartość Prawda, a hd jest ustawione. To jest konto Google Workspace.

Użytkownicy mogą rejestrować konta Google bez korzystania z Gmaila i Google Workspace. Jeśli email nie zawiera sufiksu @gmail.com, a nie podano hd, Google nie jest wiarygodnym podmiotem, a hasła lub inne metody weryfikacji są zalecane do zweryfikowania użytkownika. email_verfied może być też prawdziwe, bo podczas tworzenia konta Google użytkownik zweryfikował początkowo konto Google, ale własność konta e-mail osoby trzeciej mogła ulec zmianie.

Pole exp pokazuje czas wygaśnięcia weryfikacji tokena po stronie serwera. Trwa 1 godzina tokena tożsamości uzyskanego z funkcji Zaloguj się przez Google. Musisz zweryfikować token przed upływem daty ważności. Do zarządzania sesją nie używaj właściwości exp. Wygasły token tożsamości nie oznacza, że użytkownik jest wylogowany. Za zarządzanie sesjami użytkowników odpowiada Twoja aplikacja.

select_by (wybierz)

Poniższa tabela zawiera możliwe wartości pola select_by. Do określenia wartości służy przycisk przycisku użyty wraz z sesją i stanem zgody użytkownika.

  • Użytkownik nacisnął przycisk jednym dotknięciem lub logowanie się przez Google albo korzystał z automatycznego logowania bezdotykowego.

  • Znaleziono istniejącą sesję lub użytkownik wybrał i zalogował się na konto Google, aby utworzyć nową sesję.

  • Przed udostępnieniem aplikacji danych uwierzytelniających token tożsamości

    • kliknij przycisk Potwierdź, aby wyrazić zgodę na udostępnianie danych logowania.
    • wyraziła wcześniej zgodę i użył konta Wybierz konto, aby wybrać konto Google.

Wartość tego pola jest ustawiona na jeden z tych typów:

Wartość Opis
auto Automatyczne logowanie użytkownika z dotychczasową sesją, która wcześniej wyraziła zgodę na udostępnianie danych logowania.
user Użytkownik, który wcześniej wyraził zgodę, nacisnął przycisk „Kontynuuj jako”, aby udostępnić dane logowania.
user_1tap Użytkownik z istniejącą sesją nacisnął przycisk „Kontynuuj jako”, aby udzielić zgody i udostępnić dane logowania. Dotyczy tylko Chrome w wersji 75 lub nowszej.
user_2tap Użytkownik bez istniejącej sesji nacisnął przycisk „Kontynuuj jako”, aby wybrać konto, a następnie przycisk Potwierdź w wyskakującym okienku, aby udzielić zgody i udostępnić dane logowania. Dotyczy przeglądarek niepochodzących z Chromium.
btn Użytkownik z istniejącą sesją, która wcześniej wyraziła zgodę, nacisnął przycisk Zaloguj się przez Google, a następnie wybrał konto Google ze strony „Wybierz konto”.
btn_confirm Użytkownik z istniejącą sesją nacisnął przycisk Zaloguj się przez Google, a następnie przycisk Potwierdź, aby udzielić zgody i udostępnić dane logowania.
btn_add_session Użytkownik bez istniejącej sesji, który wcześniej wyraził zgodę, nacisnął przycisk Zaloguj się przez Google, aby wybrać konto Google i udostępnić dane logowania.
btn_confirm_add_session Użytkownik bez istniejącej sesji najpierw kliknął przycisk Zaloguj się przez Google, aby wybrać konto Google, a następnie przycisk Potwierdź, aby wyrazić zgodę na udostępnienie danych logowania i je udostępnić.

Punkt końcowy modułu obsługi danych logowania do hasła

Punkt końcowy modułu obsługi danych logowania przetwarza hasła, które pobiera natywny menedżer danych logowania.

Żądanie HTTP POST zawiera te informacje:

Format Nazwa Opis
Plik cookie g_csrf_token Losowy ciąg znaków, który zmienia się wraz z każdym żądaniem do punktu końcowego modułu obsługi.
Parametr żądania g_csrf_token Ciąg znaków, który jest taki sam jak poprzednia wartość pliku cookie, g_csrf_token.
Parametr żądania email Token tożsamości wydany przez Google.
Parametr żądania password Sposób wyboru danych logowania.