Bu referansta, Google'dan yetkilendirme kodları veya erişim jetonları yüklemek için kullanabileceğiniz Google 3P Yetkilendirme JavaScript Kitaplığı API'si açıklanmaktadır.
Yöntem: google.accounts.oauth2.initCodeClient
initCodeClient
yöntemi, parametredeki yapılandırmaları içeren bir kod istemcisi başlatır ve döndürür.
google.accounts.oauth2.initCodeClient(config: CodeClientConfig)
Veri türü: CodeClientConfig
Aşağıdaki tabloda CodeClientConfig
veri türünün özellikleri listelenmektedir.
Özellikler | |
---|---|
client_id
|
Zorunludur. Uygulamanızın istemci kimliği. Bu değeri, API Konsolu'nda bulabilirsiniz. |
scope
|
Zorunludur. Uygulamanızın kullanıcı adına erişebileceği kaynakları tanımlayan, boşlukla sınırlandırılmış kapsam listesi. Bu değerler, Google'ın kullanıcıya gösterdiği izin ekranını bildirir. |
include_granted_scopes |
İsteğe bağlı, varsayılan olarak true değerine ayarlanır. Uygulamalara, bağlam içindeki ek kapsamlara erişim istemek için ek yetkilendirme kullanma izni verir. Bu parametrenin değerini false olarak ayarlarsanız ve yetkilendirme isteği verilirse yeni erişim jetonu yalnızca bu CodeClientConfig içinde scope için istenen tüm kapsamları kapsar.
|
redirect_uri
|
Yönlendirme kullanıcı deneyimi için gereklidir. Kullanıcı, yetkilendirme akışını tamamladıktan sonra API sunucusunun kullanıcıyı nereye yönlendireceğini belirler. Değer, API 2'de yapılandırdığınız OAuth 2.0 istemcisi için yetkili yönlendirme URI'lerinden biriyle tam olarak eşleşmeli ve Yönlendirme URI'si doğrulama kurallarımıza uygun olmalıdır. Mülk, pop-up kullanıcı deneyimi tarafından yoksayılır. |
callback |
Pop-up kullanıcı deneyimi için gereklidir. Döndürülen kod yanıtını işleyen JavaScript işlevi. Mülk, yönlendirme kullanıcı deneyimi tarafından yoksayılır. |
state |
İsteğe bağlı. Yönlendirme kullanıcı deneyimi için önerilir. Uygulamanızın, yetkilendirme isteğiniz ile yetkilendirme sunucusunun yanıtı arasında durumu korumak için kullandığı herhangi bir dize değerini belirtir. |
enable_granular_consent |
İsteğe bağlı, varsayılan olarak true değerine ayarlanır. false olarak ayarlanırsa 2019'dan önce oluşturulan OAuth istemci kimlikleri için daha ayrıntılı Google Hesabı izinleri devre dışı bırakılır. Hem enable_granular_consent hem de enable_serial_consent ayarlanırsa yalnızca enable_granular_consent değeri geçerli olur ve enable_serial_consent değeri yok sayılır.Yeni OAuth istemci kimlikleri için her zaman daha ayrıntılı izinler etkinleştirildiğinden bunların herhangi bir etkisi yoktur. |
enable_serial_consent |
Kullanımdan kaldırıldı, bunun yerine enable_granular_consent kullanmanız gerekir. Bu değişiklik enable_granular_consent ile aynı etkiye sahiptir. enable_serial_consent kullanan mevcut uygulamalar bunu yapmaya devam edebilir ancak bir sonraki uygulama güncellemenizde enable_granular_consent uygulamasını kullanmak için kodunuzu güncellemenizi öneririz.
|
login_hint |
İsteğe bağlı. Uygulamanız, hangi kullanıcının isteği yetkilendirmesi gerektiğini bilirse Google'a giriş ipucu sağlamak için bu özelliği kullanabilir. İşlem başarılı olduğunda hesap seçimi atlanır. Hedef kullanıcının e-posta adresi veya kimlik jetonu sub alanı değeri.
Daha fazla bilgi için OpenID Connect dokümanlarındaki login_hint alanına bakın.
|
hd |
İsteğe bağlı. Uygulamanız, kullanıcının ait olduğu Workspace alanını biliyorsa Google'a ipucu vermek için bu alanı kullanın. Başarılı olan kullanıcı hesapları, sağlanan alanla sınırlıdır veya önceden seçilmiştir.
Daha fazla bilgi için OpenID Connect dokümanlarındaki hd alanına bakın.
|
ux_mode |
İsteğe bağlı. Yetkilendirme akışı için kullanılacak kullanıcı deneyimi modu. Varsayılan olarak izin akışı bir pop-up'ta açılır. Geçerli değerler popup ve redirect değerleridir.
|
select_account |
İsteğe bağlı olarak varsayılan olarak 'false' değeri kullanılır. Kullanıcıdan hesap seçmesini isteyen boole değeri. |
error_callback |
İsteğe bağlı. OAuth dışındaki bazı hataları işleyen JavaScript işlevi (ör. pop-up penceresi açılamadı
veya bir OAuth yanıtı döndürülmeden önce kapatıldı).
Giriş parametresinin "tür" alanı ayrıntılı bir neden sunar.
|
Veri türü: CodeClient
Sınıfta OAuth 2.0 Kod kullanıcı deneyimi akışını başlatan yalnızca bir tane herkese açık istek yöntemi kodu vardır.
interface CodeClient {
requestCode(): void;
}
Veri türü: CodeResponse
Pop-up kullanıcı deneyiminde callback
yönteminize bir CodeResponse
JavaScript nesnesi iletilir. Yönlendirme kullanıcı deneyiminde CodeResponse
, URL parametreleri olarak iletilir.
Aşağıdaki tabloda CodeResponse
veri türünün özellikleri listelenmektedir.
Özellikler | |
---|---|
code |
Başarılı bir jeton yanıtının yetkilendirme kodu. |
scope |
Kullanıcı tarafından onaylanan, boşlukla sınırlandırılmış kapsam listesi. |
state |
Uygulamanızın, yetkilendirme isteğiniz ile yanıt arasındaki durumu korumak için kullandığı dize değeri. |
error |
Tek bir ASCII hata kodu. |
error_description |
Ek bilgi sağlayan, istemci geliştiricinin meydana gelen hatayı anlamasına yardımcı olmak için kullanılan, okunabilir ASCII metni. |
error_uri |
Hata hakkında bilgi içeren ve okunabilir bir web sayfasını tanımlayan bir URI. İstemci geliştiricisine hata hakkında ek bilgi sağlamak için kullanılır. |
Yöntem: google.accounts.oauth2.initTokenClient
initTokenClient
yöntemi, parametredeki yapılandırmalarla birlikte bir jeton istemcisi başlatıp başlatır.
google.accounts.oauth2.initTokenClient(config: TokenClientConfig)
Veri türü: TokenClientConfig
Aşağıdaki tabloda TokenClientConfig
veri türünün özellikleri listelenmektedir.
Özellikler | |
---|---|
client_id |
Zorunludur. Uygulamanızın istemci kimliği. Bu değeri API Konsolu'nda bulabilirsiniz. |
callback |
Zorunludur. Döndürülen jeton yanıtını işleyen JavaScript işlevi. |
scope |
Zorunludur. Uygulamanızın kullanıcı adına erişebileceği kaynakları tanımlayan, boşlukla sınırlandırılmış kapsam listesi. Bu değerler, Google'ın kullanıcıya gösterdiği izin ekranını bildirir. |
include_granted_scopes |
İsteğe bağlı, varsayılan olarak true değerine ayarlanır. Uygulamalara, bağlam içindeki ek kapsamlara erişim istemek için ek yetkilendirme kullanma izni verir. Bu parametrenin değerini false olarak ayarlarsanız ve yetkilendirme isteği verilirse yeni erişim jetonu yalnızca bu TokenClientConfig içinde scope için istenen tüm kapsamları kapsar.
|
prompt |
İsteğe bağlı olarak varsayılan olarak 'select_account' değeri kullanılır. Kullanıcıya sunulmak üzere boşlukla sınırlandırılmış, büyük/küçük harfe duyarlı bir istek listesi. Olası değerler:
|
enable_granular_consent |
İsteğe bağlı, varsayılan olarak true değerine ayarlanır. false olarak ayarlanırsa 2019'dan önce oluşturulan OAuth istemci kimlikleri için daha ayrıntılı Google Hesabı izinleri devre dışı bırakılır. Hem enable_granular_consent hem de enable_serial_consent ayarlanırsa yalnızca enable_granular_consent değeri geçerli olur ve enable_serial_consent değeri yok sayılır.Yeni OAuth istemci kimlikleri için her zaman daha ayrıntılı izinler etkinleştirildiğinden bunların herhangi bir etkisi yoktur. |
enable_serial_consent |
Kullanımdan kaldırıldı, bunun yerine enable_granular_consent kullanmanız gerekir. Bu değişiklik enable_granular_consent ile aynı etkiye sahiptir. enable_serial_consent kullanan mevcut uygulamalar bunu yapmaya devam edebilir ancak bir sonraki uygulama güncellemenizde enable_granular_consent uygulamasını kullanmak için kodunuzu güncellemenizi öneririz.
|
login_hint |
İsteğe bağlı. Uygulamanız, hangi kullanıcının isteği yetkilendirmesi gerektiğini bilirse Google'a giriş ipucu sağlamak için bu özelliği kullanabilir. İşlem başarılı olduğunda hesap seçimi atlanır. Hedef kullanıcının e-posta adresi veya kimlik jetonu sub alanı değeri.
Daha fazla bilgi için OpenID Connect dokümanlarındaki login_hint alanına bakın.
|
hd |
İsteğe bağlı. Uygulamanız, kullanıcının ait olduğu Workspace alanını biliyorsa Google'a ipucu vermek için bu alanı kullanın. Başarılı olan kullanıcı hesapları, sağlanan alanla sınırlıdır veya önceden seçilmiştir.
Daha fazla bilgi için OpenID Connect dokümanlarındaki hd alanına bakın.
|
state |
İsteğe bağlı. Önerilmez. Uygulamanızın, yetkilendirme isteğiniz ile yetkilendirme sunucusunun yanıtı arasında durumu korumak için kullandığı herhangi bir dize değerini belirtir. |
error_callback |
İsteğe bağlı. OAuth dışındaki bazı hataları işleyen JavaScript işlevi (ör. pop-up penceresi açılamadı
veya bir OAuth yanıtı döndürülmeden önce kapatıldı).
Giriş parametresinin "tür" alanı ayrıntılı bir neden sunar.
|
Veri türü: TokenClient
Sınıfta OAuth 2.0 Token kullanıcı deneyimi akışını başlatan yalnızca bir herkese açık requestAccessToken
yöntemi var.
interface TokenClient {
requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
Bağımsız değişkenler | ||
---|---|---|
overrideConfig |
Geçersiz Kılınan TokenClientConfig | İsteğe bağlı. Bu yöntemde geçersiz kılınacak yapılandırmalar. |
Veri türü: OverridableTokenClientConfig
Aşağıdaki tabloda OverridableTokenClientConfig
veri türünün özellikleri listelenmiştir.
Özellikler | |
---|---|
scope |
İsteğe bağlı. Uygulamanızın kullanıcı adına erişebileceği kaynakları tanımlayan, boşlukla sınırlandırılmış kapsam listesi. Bu değerler, Google'ın kullanıcıya gösterdiği izin ekranını bildirir. |
include_granted_scopes |
İsteğe bağlı, varsayılan olarak true değerine ayarlanır. Uygulamalara, bağlam içindeki ek kapsamlara erişim istemek için ek yetkilendirme kullanma izni verir. Bu parametrenin değerini false olarak ayarlarsanız ve yetkilendirme isteği verilirse yeni erişim jetonu yalnızca bu OverridableTokenClientConfig içinde scope için istenen tüm kapsamları kapsar.
|
prompt |
İsteğe bağlı. Kullanıcıya sunulmak üzere boşlukla sınırlandırılmış, büyük/küçük harfe duyarlı bir istek listesi. |
enable_granular_consent |
İsteğe bağlı, varsayılan olarak true değerine ayarlanır. false olarak ayarlanırsa 2019'dan önce oluşturulan OAuth istemci kimlikleri için daha ayrıntılı Google Hesabı izinleri devre dışı bırakılır.Hem enable_granular_consent hem de enable_serial_consent ayarlanırsa yalnızca enable_granular_consent değeri geçerli olur ve enable_serial_consent değeri yoksayılır.Yeni OAuth istemci kimlikleri için her zaman daha ayrıntılı izinler etkinleştirildiğinden bunların herhangi bir etkisi yoktur. |
enable_serial_consent |
Kullanımdan kaldırıldı, bunun yerine enable_granular_consent kullanmanız gerekir. Bu değişiklik enable_granular_consent ile aynı etkiye sahiptir. enable_serial_consent kullanan mevcut uygulamalar bunu yapmaya devam edebilir ancak bir sonraki uygulama güncellemenizde enable_granular_consent uygulamasını kullanmak için kodunuzu güncellemenizi öneririz.
|
login_hint |
İsteğe bağlı. Uygulamanız, hangi kullanıcının isteği yetkilendirmesi gerektiğini bilirse Google'a giriş ipucu sağlamak için bu özelliği kullanabilir. İşlem başarılı olduğunda hesap seçimi atlanır. Hedef kullanıcının e-posta adresi veya kimlik jetonu sub alanı değeri.
Daha fazla bilgi için OpenID Connect dokümanlarındaki login_hint alanına bakın.
|
state |
İsteğe bağlı. Önerilmez. Uygulamanızın, yetkilendirme isteğiniz ile yetkilendirme sunucusunun yanıtı arasında durumu korumak için kullandığı herhangi bir dize değerini belirtir. |
Veri türü: TokenResponse
Pop-up kullanıcı deneyiminde geri çağırma yönteminize bir TokenResponse
JavaScript nesnesi iletilir.
Aşağıdaki tabloda TokenResponse
veri türünün özellikleri listelenmektedir.
Özellikler | |
---|---|
access_token |
Başarılı bir jeton yanıtının erişim jetonu. |
expires_in |
Erişim jetonunun saniye cinsinden kullanım ömrü. |
hd |
Oturum açmış kullanıcının ait olduğu barındırılan alan. |
prompt |
TokenClientConfig veya OverridableTokenClientConfig tarafından belirtilen olası değerler listesinden kullanılan istem değeri. |
token_type |
Verilen jetonun türü. |
scope |
Kullanıcı tarafından onaylanan, boşlukla sınırlandırılmış kapsam listesi. |
state |
Uygulamanızın, yetkilendirme isteğiniz ile yanıt arasındaki durumu korumak için kullandığı dize değeri. |
error |
Tek bir ASCII hata kodu. |
error_description |
Ek bilgiler sunan, istemci geliştiricinin oluşan hatayı anlamasına yardımcı olmak amacıyla kullanılan, okunabilir ASCII metni. |
error_uri |
Hata hakkında bilgi içeren ve okunabilir bir web sayfasını tanımlayan bir URI. İstemci geliştiricisine hata hakkında ek bilgi sağlamak için kullanılır. |
Yöntem: google.accounts.oauth2.hasGrantedAllScopes
Kullanıcının belirtilen tüm kapsamı veya kapsamları verip vermediğini kontrol eder.
google.accounts.oauth2.hasGrantedAllScopes(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Bağımsız değişkenler | ||
---|---|---|
tokenResponse |
TokenResponse
|
Zorunludur. TokenResponse nesnesi.
|
firstScope |
string | Zorunludur. Kontrol edilecek kapsam. |
restScopes |
dize[] | İsteğe bağlı. Kontrol edilecek diğer kapsamlar. |
İadeler | |
---|---|
boolean | Tüm kapsamlar verildiyse doğru değerini döndürür. |
Yöntem: google.accounts.oauth2.hasGranted AnyScope
Kullanıcının belirtilen kapsamlardan veya kapsamlardan herhangi birini verip vermediğini kontrol eder.
google.accounts.oauth2.hasGrantedAnyScope(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Bağımsız değişkenler | ||
---|---|---|
tokenResponse |
TokenResponse
|
Zorunludur. TokenResponse nesnesi.
|
firstScope |
string | Zorunludur. Kontrol edilecek kapsam. |
restScopes |
dize[] | İsteğe bağlı. Kontrol edilecek diğer kapsamlar. |
İadeler | |
---|---|
boolean | Kapsamlardan herhangi biri verilirse doğru değerini döndürür. |
Yöntem: google.accounts.oauth2.revoke
revoke
yöntemi, kullanıcının uygulamaya verdiği tüm kapsamları iptal eder. İznin iptal edilmesi için geçerli bir erişim jetonu gerekir.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
Bağımsız değişkenler | ||
---|---|---|
accessToken |
string | Zorunludur. Geçerli bir erişim jetonu. |
callback |
function | İsteğe bağlı. RevocationResponse işleyici. |
Veri türü: RevocationResponse
Geri çağırma yönteminize bir RevocationResponse
JavaScript nesnesi iletilir.
Aşağıdaki tabloda RevocationResponse
veri türünün özellikleri listelenmektedir.
Özellikler | |
---|---|
successful |
Boole. true başarıyla tamamlandı, false başarısız oldu. |
error |
Dize. Başarı tanımlanmadı. Tek bir ASCII hata kodu. Bu durum, standart OAuth 2.0 hata kodlarını içerir ancak bunlarla sınırlı değildir. revoke yönteminde sık karşılaşılan hatalar:
|
error_description |
Dize. Başarı tanımlanmadı. İnsan tarafından okunabilir ASCII metni, error özelliği hakkında ek bilgiler sağlar. Geliştiriciler oluşan hatayı daha iyi anlamak için bunu kullanabilirler. error_description dizesi yalnızca İngilizce dilindedir.
error içinde listelenen yaygın hatalar için ilgili error_description :
|