Farklı katmanlarda hatalar oluşabilir. Hatanın oluştuğu yere bağlı olarak farklı şekillerde bildirim alabilirsiniz.
Gerekli OAuth Parametreleri
client_id veya kapsam gibi gerekli OAuth parametrelerini ayarlamayı unutursanız tarayıcınızın JavaScript konsolunda bir hata mesajı görürsünüz.

OAuth yapılandırma hatalarını düzeltme
Bazı hataları düzeltmek için Google API'leri konsolunda değişiklik yapmanız gerekebilir.
- Henüz oluşturulmamışsa istemci kimliği oluşturur.
- Pop-up kullanıcı deneyimi için mevcut akışı tetikleyebilecek tüm alanları
Authorized JavaScript origins
'ya ekleyin. - Yönlendirme kullanıcı deneyimi için yetkilendirme yanıtları alabilecek tüm URL'leri
Authorized redirect URIs
bölümüne ekleyin. - OAuth izin ekranınızı doğru şekilde yapılandırın.
- Gerekirse uygulamanızı doğrulanması için gönderin.
- Google'ın OAuth 2.0 politikalarına uymak için ek adımlar atmanız gerekebilir.
Geçersiz OAuth Parametre Değerleri
Geçersiz değerleri geçersiz istemci kimliği, kapsam tanımlayıcıları veya yanıt türü değerleri gibi OAuth parametrelerine ayarlarsanız OAuth hata sayfasını görürsünüz.

OAuth Hata Yanıtları
OAuth, hata yanıtı döndürebilir. Bu durumda callback
işleviniz, parametre olarak hata yanıtıyla tetiklenir. Aşağıda bir örnek OAuth hata yanıtı verilmiştir.
{ "error":"access_denied" }
Örnek olarak şunlar verilebilir:
- Kullanıcı, OAuth isteğini reddeder.
prompt=none
parametresini içeren bir OAuth isteğinde kullanıcının kimliği henüz doğrulanmamıştır ve istenen kapsamlar için önceden yapılandırılmış bir izin yoktur.
Bu örnekte, başarı ve hata OAuth yanıtlarının nasıl işleneceği gösterilmektedir:
function myCallback(response) {
if (response.error) {
// Handle error response
... ...
} else if (response.code) {
// Handle success code response
... ...
}
}
OAuth Olmayan Hatalar
OAuth, aşağıdaki durumlarda davranışları tanımlamaz:
- Pop-up pencere açılamıyor.
- OAuth yanıtı döndürülmeden önce pop-up penceresi kapatılırsa
Bu kitaplık, bu hataları yakalar ve ayarlanmışsa error_callback
tetikler. Hata türünü kontrol ettiğinizden emin olun. Aksi takdirde, bu kitaplık daha sonra yeni hata türlerini desteklediğinde kod mantığınız etkilenebilir.
function myErrorCallback(err) {
if (err.type == 'popup_failed_to_open') {
// The popup window is failed to open
... ...
} else if (err.type == 'popup_closed') {
// The popup window is closed before an OAuth response is returned
... ...
}
}
const client = google.accounts.oauth2.initCodeClient({
client_id: 'YOUR_GOOGLE_CLIENT_ID',
scope: 'https://www.googleapis.com/auth/calendar.readonly',
ux_mode: 'popup',
callback: myCallback,
error_callback: myErrorCallback
});