Referensi ini menjelaskan Google 3P Authorization JavaScript Library API, yang dapat Anda gunakan untuk memuat kode otorisasi atau mengakses token dari Google.
Metode: google.accounts.oauth2.initCodeClient
Metode initCodeClient
menginisialisasi dan menampilkan klien kode, dengan konfigurasi di parameter.
google.accounts.oauth2.initCodeClient(config: CodeClientConfig)
Jenis data: CodeClientConfig
Tabel berikut mencantumkan properti jenis data CodeClientConfig
.
Properti | |
---|---|
client_id
|
Wajib. Client ID untuk aplikasi Anda. Anda dapat menemukan nilai ini di Konsol API. |
scope
|
Wajib. Daftar cakupan yang dipisahkan spasi yang mengidentifikasi resource yang dapat diakses aplikasi atas nama pengguna Anda. Nilai ini menginformasikan layar izin yang ditampilkan Google kepada pengguna. |
include_granted_scopes |
Opsional, ditetapkan secara default ke true . Memungkinkan aplikasi menggunakan otorisasi
inkremental untuk meminta akses ke cakupan tambahan dalam konteks. Jika Anda menetapkan nilai parameter ini ke false dan permintaan otorisasi disetujui, token akses baru hanya akan mencakup cakupan apa pun yang diminta scope di CodeClientConfig ini.
|
redirect_uri
|
Diperlukan untuk UX pengalihan. Menentukan tempat server API mengalihkan pengguna setelah pengguna menyelesaikan alur otorisasi. Nilai harus sama persis dengan salah satu URI pengalihan yang diberi otorisasi untuk klien OAuth 2.0, yang Anda konfigurasi di Konsol API dan harus sesuai dengan Aturan validasi URI pengalihan kami. Properti akan diabaikan oleh UX pop-up. |
callback |
Diperlukan untuk UX pop-up. Fungsi JavaScript yang menangani respons kode yang ditampilkan. Properti akan diabaikan oleh UX pengalihan. |
state |
Opsional. Direkomendasikan untuk UX pengalihan. Menentukan nilai string apa pun yang digunakan aplikasi Anda untuk mempertahankan status antara permintaan otorisasi dan respons server otorisasi. |
enable_serial_consent |
Opsional, ditetapkan secara default ke true . Jika ditetapkan ke false , izin Akun Google yang lebih terperinci akan dinonaktifkan untuk client ID OAuth yang dibuat sebelum tahun 2019. Tidak ada dampak untuk client ID OAuth yang lebih baru, karena izin yang lebih terperinci selalu diaktifkan untuk ID tersebut.
|
hint |
Opsional. Jika aplikasi Anda mengetahui pengguna mana yang harus mengizinkan permintaan, aplikasi dapat menggunakan properti ini untuk memberikan petunjuk ke Google. Alamat email untuk pengguna target.
Untuk mengetahui informasi selengkapnya, lihat kolom login_hint di dokumen OpenID Connect.
|
hd |
Opsional. Jika aplikasi Anda mengetahui domain Workspace pengguna, gunakan domain ini untuk memberikan petunjuk ke Google.
Untuk mengetahui informasi selengkapnya, lihat kolom hd di dokumen OpenID Connect.
|
ux_mode |
Opsional. Mode UX yang akan digunakan untuk alur otorisasi. Secara default, alur izin akan terbuka di pop-up. Nilai yang valid adalah popup dan redirect .
|
select_account |
Opsional, nilai defaultnya adalah 'false'. Nilai Boolean untuk meminta pengguna memilih akun. |
error_callback |
Opsional. Fungsi JavaScript yang menangani beberapa error non-OAuth, seperti
jendela pop-up gagal dibuka; atau ditutup sebelum respons OAuth
ditampilkan.
Kolom `type` pada parameter input memberikan alasan terperinci.
|
Jenis data: CodeClient
Class ini hanya memiliki satu requestCode metode publik, yang memulai alur UX Kode OAuth 2.0.
interface CodeClient {
requestCode(): void;
}
Jenis data: CodeResponse
Objek JavaScript CodeResponse
akan diteruskan ke metode callback
Anda dalam UX pop-up. Pada UX pengalihan, CodeResponse
akan diteruskan sebagai parameter
URL.
Tabel berikut mencantumkan properti jenis data CodeResponse
.
Properti | |
---|---|
code |
Kode otorisasi respons token yang berhasil. |
scope |
Daftar cakupan yang dipisahkan spasi yang disetujui oleh pengguna. |
state |
Nilai string yang digunakan aplikasi Anda untuk mempertahankan status antara permintaan otorisasi Anda dan respons. |
error |
Kode error ASCII tunggal. |
error_description |
Teks ASCII yang dapat dibaca manusia dan memberikan informasi tambahan, digunakan untuk membantu developer klien dalam memahami error yang terjadi. |
error_uri |
URI yang mengidentifikasi halaman web yang dapat dibaca manusia dengan informasi tentang error, digunakan untuk memberikan informasi tambahan tentang error kepada developer klien. |
Metode: google.accounts.oauth2.initTokenClient
Metode initTokenClient
menginisialisasi dan menampilkan klien token, dengan konfigurasi di parameter.
google.accounts.oauth2.initTokenClient(config: TokenClientConfig)
Jenis data: TokenClientConfig
Tabel berikut mencantumkan properti jenis data TokenClientConfig
.
Properti | |
---|---|
client_id |
Wajib. Client ID untuk aplikasi Anda. Anda dapat menemukan nilai ini di Konsol API. |
callback |
Wajib. Fungsi JavaScript yang menangani respons token yang ditampilkan. |
scope |
Wajib. Daftar cakupan yang dipisahkan spasi yang mengidentifikasi resource yang dapat diakses aplikasi atas nama pengguna Anda. Nilai ini menginformasikan layar izin yang ditampilkan Google kepada pengguna. |
include_granted_scopes |
Opsional, ditetapkan secara default ke true . Memungkinkan aplikasi menggunakan otorisasi
inkremental untuk meminta akses ke cakupan tambahan dalam konteks. Jika Anda menetapkan nilai parameter ini ke false dan permintaan otorisasi disetujui, token akses baru hanya akan mencakup cakupan apa pun yang diminta scope di TokenClientConfig ini.
|
prompt |
Opsional, ditetapkan secara default ke 'select_account'. Daftar perintah yang dipisahkan spasi dan
peka huruf besar/kecil untuk menampilkan pengguna. Nilainya dapat berupa:
|
enable_serial_consent |
Opsional, ditetapkan secara default ke true . Jika ditetapkan ke false , izin Akun Google yang lebih terperinci akan dinonaktifkan untuk client ID OAuth yang dibuat sebelum tahun 2019. Tidak ada dampak untuk client ID OAuth yang lebih baru, karena izin yang lebih terperinci selalu diaktifkan untuk ID tersebut.
|
hint |
Opsional. Jika aplikasi Anda mengetahui pengguna mana yang harus mengizinkan permintaan, aplikasi dapat menggunakan properti ini untuk memberikan petunjuk ke Google. Alamat email untuk pengguna target.
Untuk mengetahui informasi selengkapnya, lihat kolom login_hint di dokumen OpenID Connect.
|
hd |
Opsional. Jika aplikasi Anda mengetahui domain Workspace pengguna, gunakan domain ini untuk memberikan petunjuk ke Google.
Untuk mengetahui informasi selengkapnya, lihat kolom hd di dokumen OpenID Connect.
|
state |
Opsional. Tidak direkomendasikan. Menentukan nilai string apa pun yang digunakan aplikasi Anda untuk mempertahankan status antara permintaan otorisasi dan respons server otorisasi. |
error_callback |
Opsional. Fungsi JavaScript yang menangani beberapa error non-OAuth, seperti
jendela pop-up gagal dibuka; atau ditutup sebelum respons OAuth
ditampilkan.
Kolom `type` pada parameter input memberikan alasan terperinci.
|
Jenis data: TokenClient
Class ini hanya memiliki satu metode publik requestAccessToken
, yang memulai
alur UX Token OAuth 2.0.
interface TokenClient {
requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
Argumen | ||
---|---|---|
overrideConfig |
DigantiTokenClientConfig | Opsional. Konfigurasi yang akan diganti dalam metode ini. |
Jenis data: OverridableTokenClientConfig
Tabel berikut mencantumkan properti jenis data OverridableTokenClientConfig
.
Properti | |
---|---|
scope |
Opsional. Daftar cakupan yang dipisahkan spasi yang mengidentifikasi resource yang dapat diakses aplikasi atas nama pengguna. Nilai ini menginformasikan layar izin yang ditampilkan Google kepada pengguna. |
include_granted_scopes |
Opsional, ditetapkan secara default ke true . Memungkinkan aplikasi menggunakan otorisasi
inkremental untuk meminta akses ke cakupan tambahan dalam konteks. Jika Anda menetapkan nilai parameter ini ke false dan permintaan otorisasi disetujui, token akses baru hanya akan mencakup cakupan apa pun yang diminta scope di OverridableTokenClientConfig ini.
|
prompt |
Opsional. Daftar perintah yang dipisahkan spasi dan peka huruf besar/kecil untuk menampilkan pengguna. |
enable_serial_consent |
Opsional, ditetapkan secara default ke true . Jika ditetapkan ke false , izin Akun Google yang lebih terperinci akan dinonaktifkan untuk client ID OAuth yang dibuat sebelum tahun 2019. Tidak ada dampak untuk client ID OAuth yang lebih baru, karena izin yang lebih terperinci selalu diaktifkan untuk ID tersebut.
|
hint |
Opsional. Jika aplikasi Anda mengetahui pengguna mana yang harus mengizinkan permintaan, aplikasi dapat menggunakan properti ini untuk memberikan petunjuk ke Google. Alamat email untuk pengguna target.
Untuk mengetahui informasi selengkapnya, lihat kolom login_hint di dokumen OpenID Connect.
|
state |
Opsional. Tidak direkomendasikan. Menentukan nilai string apa pun yang digunakan aplikasi Anda untuk mempertahankan status antara permintaan otorisasi dan respons server otorisasi. |
Jenis data: TokenResponse
Objek JavaScript TokenResponse
akan diteruskan ke metode callback Anda dalam UX pop-up.
Tabel berikut mencantumkan properti jenis data TokenResponse
.
Properti | |
---|---|
access_token |
Token akses dari respons token yang berhasil. |
expires_in |
Masa aktif token akses dalam hitungan detik. |
hd |
Domain yang dihosting tempat pengguna yang login berada. |
prompt |
Nilai perintah yang digunakan dari kemungkinan daftar nilai yang ditentukan oleh TokenClientConfig atau OverridableTokenClientConfig. |
token_type |
Jenis token yang dikeluarkan. |
scope |
Daftar cakupan yang dipisahkan spasi yang disetujui oleh pengguna. |
state |
Nilai string yang digunakan aplikasi Anda untuk mempertahankan status antara permintaan otorisasi Anda dan respons. |
error |
Kode error ASCII tunggal. |
error_description |
Teks ASCII yang dapat dibaca manusia dan memberikan informasi tambahan, digunakan untuk membantu developer klien dalam memahami error yang terjadi. |
error_uri |
URI yang mengidentifikasi halaman web yang dapat dibaca manusia dengan informasi tentang error, digunakan untuk memberikan informasi tambahan tentang error kepada developer klien. |
Metode: google.accounts.oauth2.hasGrantedAllScopes
Memeriksa apakah pengguna memberikan semua cakupan atau cakupan yang ditentukan.
google.accounts.oauth2.hasGrantedAllScopes(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Argumen | ||
---|---|---|
tokenResponse |
TokenResponse
|
Wajib. Objek TokenResponse .
|
firstScope |
string | Wajib. Cakupan yang akan diperiksa. |
restScopes |
string[] | Opsional. Cakupan lain untuk diperiksa. |
Hasil | |
---|---|
boolean | True jika semua cakupan diberikan. |
Metode: google.accounts.oauth2.hasGrantedAnyScope
Memeriksa apakah pengguna memberikan cakupan atau cakupan yang ditentukan.
google.accounts.oauth2.hasGrantedAnyScope(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Argumen | ||
---|---|---|
tokenResponse |
TokenResponse
|
Wajib. Objek TokenResponse .
|
firstScope |
string | Wajib. Cakupan yang akan diperiksa. |
restScopes |
string[] | Opsional. Cakupan lain untuk diperiksa. |
Hasil | |
---|---|
boolean | True jika salah satu cakupan diberikan. |
Metode: google.accounts.oauth2.revoke
Metode revoke
mencabut semua cakupan yang diberikan pengguna ke aplikasi.
Token akses yang valid diperlukan untuk mencabut izin.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
Argumen | ||
---|---|---|
accessToken |
string | Wajib. Token akses yang valid. |
callback |
fungsi | Opsional. Pengendali RevocationResponse. |
Jenis data: RevocationResponse
Objek JavaScript RevocationResponse
akan diteruskan ke metode callback Anda.
Tabel berikut mencantumkan properti jenis data RevocationResponse
.
Properti | |
---|---|
successful |
Boolean. true pada berhasil, false pada gagal. |
error |
String. Tidak ditentukan saat berhasil. Kode error ASCII tunggal. Hal ini mencakup, tetapi tidak terbatas pada kode error OAuth 2.0 standar. Error umum untuk metode revoke :
|
error_description |
String. Tidak ditentukan saat berhasil. Teks ASCII yang dapat dibaca manusia memberikan informasi tambahan tentang
properti error . Developer dapat menggunakannya untuk lebih memahami
error yang terjadi. String error_description hanya tersedia dalam bahasa Inggris.
Untuk error umum yang tercantum di error , error_description yang sesuai:
|