W tym artykule znajdziesz opis interfejsu Google Account Authorization JavaScript API, który służy do uzyskiwania od Google kodów autoryzacji lub tokenów dostępu.
Metoda: google.accounts.oauth2.initCodeClient
Metoda initCodeClient
inicjuje i zwraca klienta kodu z konfiguracjami w parametrze.
google.accounts.oauth2.initCodeClient(config: CodeClientConfig)
Typ danych: CodeClientConfig
W tabeli poniżej znajdziesz właściwości typu danych CodeClientConfig
.
Właściwości | |
---|---|
client_id | Wymagane. Identyfikator klienta Twojej aplikacji. Tę wartość znajdziesz w Konsoli interfejsów API. |
scope | Wymagane. Lista zakresów oddzielonych spacjami, które identyfikują zasoby, do których aplikacja może uzyskać dostęp w imieniu użytkownika. Te wartości informują ekran zgody, który Google wyświetla użytkownikowi. |
include_granted_scopes | Opcjonalne, domyślnie true . Umożliwia aplikacjom korzystanie z autoryzacji stopniowej w celu zgłaszania w odpowiednim kontekście próśb o dostęp do dodatkowych zakresów. Jeśli ustawisz wartość tego parametru na false i żądanie autoryzacji zostanie zaakceptowane, nowy token dostępu będzie obejmować tylko zakresy, o które scope poprosił w tym CodeClientConfig . |
redirect_uri | Wymagane w przypadku przekierowania. Określa, gdzie serwer API przekierowuje użytkownika po zakończeniu procesu autoryzacji. Wartość musi dokładnie odpowiadać jednemu z autoryzowanych identyfikatorów URI przekierowania klienta OAuth 2.0, który został skonfigurowany w konsoli interfejsu API, i musi być zgodna z naszymi zasadami weryfikacji identyfikatorów URI przekierowania. Właściwość zostanie zignorowana przez interfejs użytkownika wyskakującego okienka. |
callback | Wymagane w przypadku wyskakującego okienka. Funkcja JavaScript, która obsługuje zwróconą odpowiedź kodu. Usługa zostanie zignorowana przez interfejs przekierowania. |
state | Opcjonalnie. Zalecane w przypadku przekierowań. Określa dowolną wartość ciągu znaków, której aplikacja używa do utrzymywania stanu między żądaniem autoryzacji a odpowiedzią serwera autoryzacji. |
enable_granular_consent | Wycofana, nie ma wpływu, jeśli jest ustawiona. Szczegółowe informacje o zachowaniu związanym ze zgodą użytkowników znajdziesz w sekcji szczegółowe uprawnienia. |
enable_serial_consent | Wycofana, nie ma wpływu, jeśli jest ustawiona. Szczegółowe informacje o zachowaniu związanym ze zgodą użytkowników znajdziesz w sekcji szczegółowe uprawnienia. |
login_hint | Opcjonalnie. Jeśli Twoja aplikacja wie, który użytkownik powinien autoryzować żądanie, może użyć tej właściwości, aby przekazać Google podpowiedź logowania. Jeśli się to uda, wybór konta zostanie pominięty. Adres e-mail lub wartość pola sub tokena identyfikatora użytkownika docelowego. Więcej informacji znajdziesz w polu login_hint w dokumentacji OpenID Connect. |
hd | Opcjonalnie. Jeśli aplikacja zna domenę Workspace, do której należy użytkownik, użyj jej, aby przekazać wskazówkę do Google. Jeśli operacja się powiedzie, konta użytkowników będą ograniczone do podanej domeny lub wstępnie wybrane dla niej. Więcej informacji znajdziesz w polu hd w dokumentacji OpenID Connect. |
ux_mode | Opcjonalnie. Tryb UX, który ma być używany w przepływie autoryzacji. Domyślnie otworzy on proces uzyskiwania zgody w wyskakującym okienku. Prawidłowe wartości to popup i redirect . |
select_account | Opcjonalne, domyślnie „false”. Wartość logiczna, która wyświetla użytkownikowi prośbę o wybranie konta. |
error_callback | Opcjonalnie. Funkcja JavaScriptu, która obsługuje niektóre błędy inne niż OAuth, np. nie udało się otworzyć wyskakującego okienka lub zostało ono zamknięte przed zwróceniem odpowiedzi OAuth. Szczegółowy powód podany jest w polu `type` parametru wejściowego.
|
Typ danych: CodeClient
Klasa ma tylko jedną metodę publiczną requestCode, która uruchamia przepływ UX kodu OAuth 2.0.
interface CodeClient { requestCode(): void; }
Typ danych: CodeResponse
Do metody callback
w wyskakującym okienku UX zostanie przekazany obiekt JavaScriptu CodeResponse
. W przypadku przekierowania CodeResponse
zostanie przekazany jako parametry URL.
W tabeli poniżej znajdziesz właściwości typu danych CodeResponse
.
Właściwości | |
---|---|
code | Kod autoryzacji z odpowiedzi z tokenem. |
scope | Lista zakresów zatwierdzonych przez użytkownika, oddzielonych spacjami. |
state | Wartość ciągu znaków, której aplikacja używa do utrzymywania stanu między żądaniem autoryzacji a odpowiedzią. |
error | Pojedynczy kod błędu ASCII. |
error_description | Tekst ASCII czytelny dla człowieka zawierający dodatkowe informacje, które pomagają programiście klienta zrozumieć, jaki błąd wystąpił. |
error_uri | Identyfikator URI strony internetowej z informacjami o błędzie, które są czytelne dla człowieka. Służy do przekazywania deweloperowi klienta dodatkowych informacji o błędzie. |
Metoda: google.accounts.oauth2.initTokenClient
Metoda initTokenClient
inicjuje i zwraca klienta tokena z konfiguracjami w parametrze.
google.accounts.oauth2.initTokenClient(config: TokenClientConfig)
Typ danych: TokenClientConfig
W tabeli poniżej znajdziesz właściwości typu danych TokenClientConfig
.
Właściwości | |
---|---|
client_id | Wymagane. Identyfikator klienta Twojej aplikacji. Znajdziesz ją w Konsoli interfejsów API. |
callback | Wymagane. Funkcja JavaScript, która obsługuje zwróconą odpowiedź tokena. |
scope | Wymagane. Lista zakresów oddzielonych spacjami, które identyfikują zasoby, do których aplikacja może uzyskać dostęp w imieniu użytkownika. Te wartości informują ekran zgody, który Google wyświetla użytkownikowi. |
include_granted_scopes | Opcjonalne, domyślnie true . Umożliwia aplikacjom korzystanie z autoryzacji stopniowej w celu zgłaszania w odpowiednim kontekście próśb o dostęp do dodatkowych zakresów. Jeśli ustawisz wartość tego parametru na false i żądanie autoryzacji zostanie zaakceptowane, nowy token dostępu będzie obejmować tylko zakresy, o które scope poprosił w tym TokenClientConfig . |
prompt | Opcjonalny, domyślnie „select_account”. Rozdzielona spacjami lista promptów, w której rozróżniana jest wielkość liter, do wyświetlenia użytkownikowi. Możliwe wartości:
|
enable_granular_consent | Wycofana, nie ma wpływu, jeśli jest ustawiona. Szczegółowe informacje o zachowaniu związanym ze zgodą użytkowników znajdziesz w sekcji szczegółowe uprawnienia. |
enable_serial_consent | Wycofana, nie ma wpływu, jeśli jest ustawiona. Szczegółowe informacje o zachowaniu związanym ze zgodą użytkowników znajdziesz w sekcji szczegółowe uprawnienia. |
login_hint | Opcjonalnie. Jeśli Twoja aplikacja wie, który użytkownik powinien autoryzować żądanie, może użyć tej właściwości, aby przekazać Google podpowiedź logowania. Jeśli się to uda, wybór konta zostanie pominięty. Adres e-mail lub wartość pola sub tokena identyfikatora użytkownika docelowego. Więcej informacji znajdziesz w polu login_hint w dokumentacji OpenID Connect. |
hd | Opcjonalnie. Jeśli aplikacja zna domenę Workspace, do której należy użytkownik, użyj jej, aby przekazać wskazówkę do Google. Jeśli operacja się powiedzie, konta użytkowników będą ograniczone do podanej domeny lub wstępnie wybrane dla niej. Więcej informacji znajdziesz w polu hd w dokumentacji OpenID Connect. |
state | Opcjonalnie. Niezalecane. Określa dowolną wartość ciągu znaków, której aplikacja używa do utrzymywania stanu między żądaniem autoryzacji a odpowiedzią serwera autoryzacji. |
error_callback | Opcjonalnie. Funkcja JavaScriptu, która obsługuje niektóre błędy inne niż OAuth, np. nie udało się otworzyć wyskakującego okienka lub zostało ono zamknięte przed zwróceniem odpowiedzi OAuth. Szczegółowy powód podany jest w polu `type` parametru wejściowego.
|
Typ danych: TokenClient
Klasa ma tylko jedną metodę publiczną requestAccessToken
, która rozpoczyna przepływ UX tokena OAuth 2.0.
interface TokenClient { requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void; }
Argumenty | ||
---|---|---|
overrideConfig | OverridableTokenClientConfig | Opcjonalnie. Konfiguracje, które mają zostać zastąpione w tej metodzie. |
Typ danych: OverridableTokenClientConfig
W tej tabeli znajdziesz właściwości typu danych OverridableTokenClientConfig
.
Właściwości | |
---|---|
scope | Opcjonalnie. Lista zakresów oddzielonych spacjami, które identyfikują zasoby, do których aplikacja może uzyskać dostęp w imieniu użytkownika. Te wartości informują ekran zgody, który Google wyświetla użytkownikowi. |
include_granted_scopes | Opcjonalne, domyślnie true . Umożliwia aplikacjom korzystanie z autoryzacji stopniowej w celu zgłaszania w odpowiednim kontekście próśb o dostęp do dodatkowych zakresów. Jeśli ustawisz wartość tego parametru na false i żądanie autoryzacji zostanie zaakceptowane, nowy token dostępu będzie obejmować tylko zakresy, o które scope poprosił w tym OverridableTokenClientConfig . |
prompt | Opcjonalnie. Rozdzielona spacjami lista promptów, w której rozróżniana jest wielkość liter, do wyświetlenia użytkownikowi. |
enable_granular_consent | Wycofana, nie ma wpływu, jeśli jest ustawiona. Szczegółowe informacje o zachowaniu związanym ze zgodą użytkowników znajdziesz w sekcji szczegółowe uprawnienia. |
enable_serial_consent | Wycofana, nie ma wpływu, jeśli jest ustawiona. Szczegółowe informacje o zachowaniu związanym ze zgodą użytkowników znajdziesz w sekcji szczegółowe uprawnienia. |
login_hint | Opcjonalnie. Jeśli Twoja aplikacja wie, który użytkownik powinien autoryzować żądanie, może użyć tej właściwości, aby przekazać Google podpowiedź logowania. Jeśli się to uda, wybór konta zostanie pominięty. Adres e-mail lub wartość pola sub tokena identyfikatora użytkownika docelowego. Więcej informacji znajdziesz w polu login_hint w dokumentacji OpenID Connect. |
state | Opcjonalnie. Niezalecane. Określa dowolną wartość ciągu znaków, której aplikacja używa do utrzymywania stanu między żądaniem autoryzacji a odpowiedzią serwera autoryzacji. |
Typ danych: TokenResponse
Do metody wywołania zwrotnego w interfejsie wyskakującego okienka zostanie przekazany TokenResponse
obiekt JavaScript.
W tabeli poniżej znajdziesz właściwości typu danych TokenResponse
.
Właściwości | |
---|---|
access_token | Token dostępu w odpowiedzi z tokenem. |
expires_in | Okres ważności tokena dostępu w sekundach. |
hd | Hostowana domena, do której należy zalogowany użytkownik. |
prompt | Wartość promptu, która została użyta z listy możliwych wartości określonych przez TokenClientConfig lub OverridableTokenClientConfig. |
token_type | Typ wydanego tokena. |
scope | Lista zakresów zatwierdzonych przez użytkownika, oddzielonych spacjami. |
state | Wartość ciągu znaków, której aplikacja używa do utrzymywania stanu między żądaniem autoryzacji a odpowiedzią. |
error | Pojedynczy kod błędu ASCII. |
error_description | Tekst ASCII czytelny dla człowieka zawierający dodatkowe informacje, które pomagają programiście klienta zrozumieć, jaki błąd wystąpił. |
error_uri | Identyfikator URI strony internetowej z informacjami o błędzie, które są czytelne dla człowieka. Służy do przekazywania deweloperowi klienta dodatkowych informacji o błędzie. |
Metoda: google.accounts.oauth2.hasGrantedAllScopes
Sprawdza, czy użytkownik przyznał wszystkie określone zakresy.
google.accounts.oauth2.hasGrantedAllScopes( tokenResponse: TokenResponse, firstScope: string, ...restScopes: string[] ): boolean;
Argumenty | ||
---|---|---|
tokenResponse | TokenResponse | Wymagane. Obiekt TokenResponse . |
firstScope | ciąg znaków | Wymagane. Zakres do sprawdzenia. |
restScopes | string[] | Opcjonalnie. Inne zakresy do sprawdzenia. |
Zwroty | |
---|---|
Wartość logiczna | Wartość Prawda, jeśli wszystkie zakresy zostały przyznane. |
Metoda: google.accounts.oauth2.hasGrantedAnyScope
Sprawdza, czy użytkownik przyznał któryś z określonych zakresów.
google.accounts.oauth2.hasGrantedAnyScope( tokenResponse: TokenResponse, firstScope: string, ...restScopes: string[] ): boolean;
Argumenty | ||
---|---|---|
tokenResponse | TokenResponse | Wymagane. Obiekt TokenResponse . |
firstScope | ciąg znaków | Wymagane. Zakres do sprawdzenia. |
restScopes | string[] | Opcjonalnie. Inne zakresy do sprawdzenia. |
Zwroty | |
---|---|
Wartość logiczna | Wartość „Prawda”, jeśli przyznano którykolwiek z zakresów. |
Metoda: google.accounts.oauth2.revoke
Metoda revoke
cofa wszystkie zakresy, które użytkownik przyznał aplikacji. Do cofnięcia uprawnień wymagany jest prawidłowy token dostępu.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
Argumenty | ||
---|---|---|
accessToken | ciąg znaków | Wymagane. Prawidłowy token dostępu. |
callback | funkcja | Opcjonalnie. Obsługa RevocationResponse. |
Typ danych: RevocationResponse
Do metody wywołania zwrotnego zostanie przekazany obiekt JavaScript RevocationResponse
.
W tabeli poniżej znajdziesz właściwości typu danych RevocationResponse
.
Właściwości | |
---|---|
successful | Wartość logiczna. true – w przypadku powodzenia, false – w przypadku niepowodzenia. |
error | Ciąg tekstowy. W przypadku powodzenia zwraca wartość undefined. Pojedynczy kod błędu ASCII. Obejmuje to między innymi standardowe kody błędów OAuth 2.0. Typowe błędy w przypadku metody revoke :
|
error_description | Ciąg tekstowy. W przypadku powodzenia zwraca wartość undefined. Tekst ASCII zrozumiały dla człowieka zawiera dodatkowe informacje o error . Dzięki temu deweloperzy mogą lepiej zrozumieć, jaki błąd wystąpił. Ciąg znaków error_description jest dostępny tylko w języku angielskim. W przypadku typowych błędów wymienionych w error odpowiedniej error_description :
|