Google Drive API iki düzeyde hata bilgisi döndürür:
- HTTP hata kodları ve üstbilgi mesajları.
- Yanıt gövdesinde, hatanın nasıl işleneceğini belirlemenize yardımcı olabilecek ek ayrıntılar içeren bir JSON nesnesi.
Google Drive uygulamaları, REST API'si kullanılırken karşılaşılabilecek tüm hataları yakalayıp işlemelidir. Bu kılavuzda, belirli Drive API hatalarının nasıl düzeltileceği hakkında talimatlar sunulmaktadır.
HTTP durum kodu özeti
Hata kodu | Açıklama |
---|---|
200 - OK |
İstek başarılıdır (bu, başarılı HTTP istekleri için standart yanıttır). |
400 - Bad Request |
İstekte istemci hatası olduğu için istek yerine getirilemiyor. |
401 - Unauthorized |
İstek geçersiz kimlik bilgileri içeriyor. |
403 - Forbidden |
İstek alındı ve anlaşıldı ancak kullanıcının isteği gerçekleştirme izni yok. |
404 - Not Found |
İstenen sayfa bulunamadı. |
429 - Too Many Requests |
API'ye çok fazla istek gönderildi. |
500, 502, 503, 504 - Server Errors |
İstek işlenirken beklenmedik bir hata oluştu. |
400 hataları
Bu hatalar, genellikle gerekli bir parametrenin eksik olması nedeniyle isteğin kabul edilemez olduğu anlamına gelir.
badRequest
Bu hata, kodunuzdaki aşağıdaki sorunlardan herhangi birinden kaynaklanabilir:
- Gerekli bir alan veya parametre sağlanmadı.
- Sağlanan değer veya sağlanan alanların bir kombinasyonu geçersiz.
- Bir Drive dosyasına kopya üst öğe eklemeye çalıştınız.
- Dizin grafiğinde döngü oluşturacak bir üst öğe eklemeye çalıştınız.
Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"code": 400,
"errors": [
{
"domain": "global",
"location": "orderBy",
"locationType": "parameter",
"message": "Sorting is not supported for queries with fullText terms. Results are always in descending relevance order.",
"reason": "badRequest"
}
],
"message": "Sorting is not supported for queries with fullText terms. Results are always in descending relevance order."
}
}
Bu hatayı düzeltmek için message
alanını kontrol edin ve kodunuzu buna göre ayarlayın.
invalidSharingRequest
Bu hata çeşitli nedenlerden kaynaklanır. Nedeni belirlemek için döndürülen JSON dosyasının reason
alanını değerlendirin. Bu hata genellikle şunlardan kaynaklanır:
- Paylaşım başarılı oldu ancak bildirim e-postası doğru şekilde teslim edilmedi.
- Bu kullanıcı için Erişim Kontrol Listesi (EKL) değişikliğine izin verilmiyor.
message
alanı gerçek hatayı gösterir.
Paylaşım başarılı oldu ancak bildirim e-postası doğru şekilde teslim edilmedi
Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidSharingRequest",
"message": "Bad Request. User message: \"Sorry, the items were successfully shared but emails could not be sent to email@domain.com.\""
}
],
"code": 400,
"message": "Bad Request"
}
}
Bu hatayı düzeltmek için kullanıcıyı (paylaşan) bildirim e-postası hedef e-posta adresine gönderilemediği için paylaşımın yapılamadığını bilgilendirin. Kullanıcı, doğru e-posta adresine sahip olduğundan ve e-posta alabildiğinden emin olmalıdır.
Bu kullanıcı için ACL değişikliğine izin verilmiyor
Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidSharingRequest",
"message": "Bad Request. User message: \"ACL change not allowed.\""
}
],
"code": 400,
"message": "Bad Request"
}
}
Bu hatayı düzeltmek için dosyanın ait olduğu Google Workspace alanının paylaşım ayarlarını kontrol edin. Ayarlar, alanın dışında paylaşımı yasaklıyor olabilir veya ortak Drive'ın paylaşımına izin verilmiyor olabilir.
401 hataları
Bu hatalar, isteğin geçerli bir erişim jetonu içermediği anlamına gelir.
authError
Bu hata, kullandığınız erişim jetonunun süresi dolduğunda veya geçersiz olduğunda ortaya çıkar. Bu hata, istenen kapsamlar için yetkilendirme eksikliğinden de kaynaklanabilir. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "authError",
"message": "Invalid Credentials",
"locationType": "header",
"location": "Authorization",
}
],
"code": 401,
"message": "Invalid Credentials"
}
}
Bu hatayı düzeltmek için uzun ömürlü yenileme jetonunu kullanarak erişim jetonunu yenileyin. Bu işlem başarısız olursa kullanıcıyı Google Drive API kapsamlarını seçme bölümünde açıklandığı gibi OAuth akışına yönlendirin.
fileNotDownloadable
Bu hata, bir Google Workspace belgesinde revisions.get
yöntemini alt=media
URL parametresiyle kullanmaya çalıştığınızda ortaya çıkar. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "fileNotDownloadable",
"message": "Only files with binary content can be downloaded. Use Export with Docs Editors files."
}
],
"code": 403,
"message": "Only files with binary content can be downloaded. Use Export with Docs Editors files."
}
}
Bu hatayı düzeltmek için aşağıdakilerden birini deneyin:
- Belirli bir düzeltmenin meta verilerini (ör. mime türü) görüntülemek istiyorsanız
alt=media
URL parametresini kaldırın. - Google Workspace doküman bayt içeriğini dışa aktarmak için
files.export
yöntemini kullanın. Daha fazla bilgi için Google Workspace belge içeriğini dışa aktarma başlıklı makaleyi inceleyin.
403 hataları
Bu hatalar, bir kullanım sınırının aşıldığı veya kullanıcının doğru ayrıcalıklara sahip olmadığı anlamına gelir. Nedeni belirlemek için döndürülen JSON'un reason
alanını değerlendirin.
Drive API sınırları hakkında bilgi edinmek için Kullanım sınırları başlıklı makaleyi inceleyin. Drive klasör sınırları hakkında bilgi edinmek için Dosya ve klasör sınırları başlıklı makaleyi inceleyin.
activeItemCreationLimitExceeded
Hesap başına oluşturulan öğe sayısı sınırı aşıldığında activeItemCreationLimitExceeded
hatası oluşur. Her kullanıcı, bir hesap tarafından oluşturulmuş 500 milyon öğeye sahip olabilir. Daha fazla bilgi için Kullanıcı-öğe sınırı başlıklı makaleyi inceleyin.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "activeItemCreationLimitExceeded",
"message": "This account has exceeded the creation limit of 500 million items. To create more items, permanently delete some items."
}
],
"code": 403,
"message": "This account has exceeded the creation limit of 500 million items. To create more items, permanently delete some items."
}
}
Bu hatayı düzeltmek için:
Kullanıcıya, Drive'ın hesapların 500 milyondan fazla öğe oluşturmasını engellediğini bildirin.
Kullanıcının aynı hesapta öğe oluşturması gerekiyorsa bazı nesneleri kalıcı olarak silmesini söyleyin. Aksi takdirde, şartı zaten karşılayan farklı bir hesap kullanabilirler.
appNotAuthorizedToFile
Bu hata, uygulamanız dosyanın EKL'sinde olmadığında ortaya çıkar. Bu hata, kullanıcının dosyayı uygulamanızla açmasını engeller. Aşağıdaki JSON örneği, bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "appNotAuthorizedToFile",
"message": "The user has not granted the app {appId} {verb} access to the file {fileId}."
}
],
"code": 403,
"message": "The user has not granted the app {appId} {verb} access to the file {fileId}."
}
}
Bu hatayı düzeltmek için aşağıdakilerden birini deneyin:
- Google Drive seçiciyi açın ve kullanıcıdan dosyayı açmasını isteyin.
- Kullanıcıya, uygulamanızın Drive kullanıcı arayüzündeki Bununla aç içerik menüsünü kullanarak dosyayı açmasını söyleyin.
- Uygulamanızın dosyayı oluşturduğunu veya açtığını doğrulamak için
files.get
yöntemini kullanarakfiles
kaynağındakiisAppAuthorized
alanını kontrol edin.
cannotModifyInheritedTeamDrivePermission
Bu hata, kullanıcı ortak Drive'daki bir öğenin devralınan izinlerini değiştirmeye çalıştığında ortaya çıkar. Devralınan izinler, ortak Drive'daki bir öğeden kaldırılamaz. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "cannotModifyInheritedTeamDrivePermission",
"message": "Cannot update or delete an inherited permission on a shared drive item."
}
],
"code": 403,
"message": "Cannot update or delete an inherited permission on a shared drive item."
}
}
Bu hatayı düzeltmek için kullanıcının, devralınan doğrudan veya dolaylı üst öğedeki izinleri ayarlaması gerekir. Daha fazla bilgi için izin yayılımı başlıklı makaleyi inceleyin. Bu ortak Drive öğesindeki izinlerin devralınıp alınmadığını veya doğrudan uygulanıp uygulanmadığını görmek için permissions.permissionDetails
kaynağını da alabilirsiniz.
dailyLimitExceeded
Bu hata, projenizin API sınırına ulaşıldığında ortaya çıkar. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "dailyLimitExceeded",
"message": "Daily Limit Exceeded"
}
],
"code": 403,
"message": "Daily Limit Exceeded"
}
}
Bu hata, uygulamanın sahibi belirli bir kaynağın kullanımını sınırlamak için kota sınırı belirlediğinde görünür. Bu hatayı düzeltmek için "Günlük sorgu sayısı" kotasının tüm kullanım sınırlarını kaldırın.
domainPolicy
Bu hata, kullanıcının alan adının politikası, uygulamanızın Drive'a erişmesine izin vermediğinde ortaya çıkar. Aşağıdaki JSON örneği, bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "domainPolicy",
"message": "The domain administrators have disabled Drive apps."
}
],
"code": 403,
"message": "The domain administrators have disabled Drive apps."
}
}
Bu hatayı düzeltmek için:
- Kullanıcıya, söz konusu alanın, uygulamanızın Drive'daki dosyalara erişmesine izin vermediğini bildirin.
- Kullanıcıya, uygulamanız için erişim isteğinde bulunmak üzere alan yöneticisiyle iletişime geçmesini söyleyin.
fileOwnerNotMemberOfTeamDrive
Bu hata, bir dosyayı ortak Drive'a taşımaya çalışırken ve dosyanın sahibi üye olmadığında ortaya çıkar. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "fileOwnerNotMemberOfTeamDrive",
"message": "Cannot move a file into a shared drive as a writer when the owner of the file is not a member of that shared drive."
}
],
"code": 403,
"message": "Cannot move a file into a shared drive as a writer when the owner of the file is not a member of that shared drive."
}
}
Bu hatayı düzeltmek için:
Üyeyi
role=owner
ile ortak Drive'a ekleyin. Daha fazla bilgi için Dosya, klasör ve Drive'ları paylaşma başlıklı makaleyi inceleyin.Dosyayı ortak Drive'a ekleyin. Daha fazla bilgi için Klasör oluşturma ve doldurma başlıklı makaleyi inceleyin.
fileWriterTeamDriveMoveInDisabled
Bu hata, bir alan yöneticisi role=writer
rolüne sahip kullanıcıların ortak Drive'a öğe taşımasına izin vermediğinde ortaya çıkar. Öğeleri taşımaya çalışan kullanıcının, hedef ortak Drive'da izin verilenden daha az izni var. Aşağıdaki JSON örneği, bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "fileWriterTeamDriveMoveInDisabled",
"message": "The domain administrator has not allowed writers to move items into a shared drive."
}
],
"code": 403,
"message": "The domain administrator has not allowed writers to move items into a shared drive."
}
}
Bu hatayı düzeltmek için hem kaynak hem de hedef ortak Drive'larda aynı yönetici kullanıcı hesabını kullanın.
insufficientFilePermissions
Bu hata, kullanıcının bir dosyaya yazma erişimi olmadığında ve uygulamanız dosyayı değiştirmeye çalıştığında ortaya çıkar. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "insufficientFilePermissions",
"message": "The user does not have sufficient permissions for file {fileId}."
}
],
"code": 403,
"message": "The user does not have sufficient permissions for file {fileId}."
}
}
Bu hatayı düzeltmek için kullanıcıdan dosyanın sahibiyle iletişime geçmesini ve düzenleme erişimi istemesini isteyin. Ayrıca, files.get
yöntemiyle alınan meta verilerde kullanıcı erişim düzeylerini kontrol edebilir ve izinler eksik olduğunda salt okunur bir kullanıcı arayüzü görüntüleyebilirsiniz.
myDriveHierarchyDepthLimitExceeded
İç içe yerleştirilmiş klasör düzeyi sayısı sınırı aşıldığında myDriveHierarchyDepthLimitExceeded
hatası oluşur. Kullanıcının Drive'ım bölümünde en fazla 100 düzeyde iç içe yerleştirilmiş klasör bulunabilir. Daha fazla bilgi için Klasör derinliği sınırı bölümüne bakın.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "myDriveHierarchyDepthLimitExceeded",
"message": "Your My Drive can't contain more than 100 levels of folders. For details, see https://developers.google.com/drive/api/guides/handle-errors#nested-folder-levels."
}
],
"code": 403,
"message": "Your My Drive can't contain more than 100 levels of folders. For details, see https://developers.google.com/drive/api/guides/handle-errors#nested-folder-levels."
}
}
Bu hatayı düzeltmek için:
- Kullanıcıya, Drive'ın 100'den fazla düzeyde klasör yerleştirilmesini engellediğini bildirin.
- Kullanıcının iç içe yerleştirilmiş başka bir klasör oluşturması gerekiyorsa kullanıcıdan hedeflenen üst klasörü 100 düzeyden daha az olacak şekilde yeniden düzenlemesi veya şartı zaten karşılayan farklı bir üst klasör kullanması talimatını verin.
numChildrenInNonRootLimitExceeded
Bu hata, bir klasörün alt öğe (klasör, dosya ve kısayol) sayısı sınırı aşıldığında ortaya çıkar. Klasörler, dosyalar ve doğrudan bir klasörde bulunan kısayollar için 500.000 öğe sınırı vardır. Alt klasörlerde iç içe yerleştirilmiş öğeler bu 500.000 öğe sınırına dahil edilmez. Drive klasör sınırları hakkında daha fazla bilgi için Google Drive'daki klasör sınırları başlıklı makaleyi inceleyin.
Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "numChildrenInNonRootLimitExceeded",
"message": "The limit for this folder's number of children (files and folders) has been exceeded."
}
],
"code": 403,
"message": "The limit for this folder's number of children (files and folders) has been exceeded."
}
}
Bu hatayı düzeltmek için aşağıdakilerden birini deneyin:
- Kullanıcıyı,Drive'ın 500.000'den fazla öğe içeren klasörleri engellediğini bilgilendirin.
- Kullanıcının dolu klasöre daha fazla öğe eklemesi gerekiyorsa klasörü 500.000'den az öğe içerecek şekilde yeniden düzenlemesini veya daha az öğe içeren benzer bir klasör kullanmasını söyleyin.
rateLimitExceeded
Bu hata, projenin hız sınırına ulaşıldığında ortaya çıkar. Bu sınır, istek türüne göre değişir. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"message": "Rate Limit Exceeded",
"reason": "rateLimitExceeded",
}
],
"code": 403,
"message": "Rate Limit Exceeded"
}
}
Bu hatayı düzeltmek için aşağıdakilerden birini deneyin:
- Google Cloud projesinde kullanıcı başına kotayı artırın. Daha fazla bilgi için kota artışı isteyin.
- Birden fazla API çağrısını tek bir HTTP isteğinde toplamak için toplu istekler kullanın.
- İsteği yeniden denemek için eksponansiyel geri yükleme işlevini kullanın.
sharingRateLimitExceeded
Bu hata, kullanıcı bir paylaşım sınırına ulaştığında ortaya çıkar ve genellikle e-posta sınırıyla ilişkilidir. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"message": "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: filename",
"reason": "sharingRateLimitExceeded",
}
],
"code": 403,
"message": "Rate Limit Exceeded"
}
}
Bu hatayı düzeltmek için:
- Çok sayıda dosya paylaşırken e-posta göndermeyin.
- Bir kullanıcı, Google Workspace hesabındaki birçok kullanıcı adına çok sayıda istek gönderiyorsa
quotaUser
parametresini kullanarak alan genelinde yetkilendirmeye sahip bir hizmet hesabı oluşturabilirsiniz.
storageQuotaExceeded
Bu hata, kullanıcı depolama alanı sınırına ulaştığında ortaya çıkar. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"message": "The user's Drive storage quota has been exceeded.",
"reason": "storageQuotaExceeded",
}
],
"code": 403,
"message": "The user's Drive storage quota has been exceeded."
}
}
Bu hatayı düzeltmek için:
Drive hesabınızın depolama alanı sınırlarını inceleyin. Daha fazla bilgi için Google Workspace depolama alanı ve yükleme sınırları başlıklı makaleyi inceleyin.
teamDriveFileLimitExceeded
Bu hata, kullanıcılar paylaşılan sürüşteki katı öğe sınırını aşmaya çalıştıklarında ortaya çıkar. Bir kullanıcının ortak Drive'ındaki her klasör için dosya, klasör ve kısayollar dahil olmak üzere toplam 500.000 öğe sınırı vardır. Bu sınır, depolama alanı kullanımına değil, öğe sayısına bağlıdır. Daha fazla bilgi için Google Drive'da ortak Drive sınırları başlıklı makaleyi inceleyin.
Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDriveFileLimitExceeded",
"message": "The file limit for this shared drive has been exceeded."
}
],
"code": 403,
"message": "The file limit for this shared drive has been exceeded."
}
}
Bu hatayı düzeltmek için ortak drive'daki öğe sayısını azaltın. Çok fazla dosya bulunan ortak Drive'ların düzenlenmesi ve bu Drive'lar içinde arama yapılması zor olabilir.
teamDriveHierarchyTooDeep
Ortak Drive'da iç içe yerleştirilmiş klasör düzeyi sayısı sınırı aşıldığında teamDriveHierarchyTooDeep
hatası oluşur. Kullanıcıların ortak Drive'larında en fazla 100 düzeyde iç içe yerleştirilmiş klasör bulunabilir. Daha fazla bilgi için Klasör derinliği sınırı başlıklı makaleyi inceleyin.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDriveHierarchyTooDeep",
"message": "The shared drive hierarchy depth will exceed the limit."
}
],
"code": 403,
"message": "The shared drive hierarchy depth will exceed the limit."
}
}
Bu hatayı düzeltmek için:
- Kullanıcıya, ortak Drive'larda 100'den fazla düzeyde klasör yerleştirilemediğini bildirin.
- Kullanıcının başka bir iç içe yerleştirilmiş klasör oluşturması gerekiyorsa istenen üst klasörü 100'den az düzey derinliğinde olacak şekilde yeniden düzenlemesini veya koşulu zaten karşılayan farklı bir üst klasör kullanmasını söyleyin.
teamDriveMembershipRequired
Bu hata, bir kullanıcı üyesi olmadığı bir ortak drive'a erişmeye çalıştığında oluşur. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDriveMembershipRequired",
"message": "The attempted action requires shared drive membership."
}
],
"code": 403,
"message": "The attempted action requires shared drive membership."
}
}
Bu hatayı düzeltmek için aşağıdakilerden birini deneyin:
Ortak Drive'ın yöneticisinden, gerçekleştirmeniz gereken işlem için uygun izinlere sahip olarak sizi eklemesini isteyin.
Paylaşılan sürücülere kimlerin erişip bunları yönetebileceğini öğrenmek için Drive'ın rollerini ve izinlerini inceleyin. Erişim düzeyleri hakkında daha fazla bilgiyi Ortak Drive oluşturma başlıklı makalede de bulabilirsiniz.
teamDrivesFolderMoveInNotSupported
Bu hata, kullanıcı bir klasörü Drive'ım'dan ortak Drive'a taşımaya çalıştığında ortaya çıkar. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDrivesFolderMoveInNotSupported",
"message": "Moving folders into shared drives is not supported."
}
],
"code": 403,
"message": "Moving folders into shared drives is not supported."
}
}
Bu hatayı düzeltmek için aşağıdakilerden birini deneyin:
Drive API'yi kullanarak klasördeki öğeleri tek tek ortak Drive'a taşıyın.
supportsAllDrives=true
parametresini hem Drive'ım hem de ortak Drive'ların desteklendiğini belirtecek şekilde ayarlayın.Klasörü ortak Drive'a taşımanız gerekiyorsa Drive kullanıcı arayüzünü kullanın. Daha fazla bilgi için Yönetici olarak klasörleri ortak Drive'lara taşıma başlıklı makaleyi inceleyin.
teamDrivesParentLimit
Bu hata, kullanıcı ortak Drive'daki bir öğeye birden fazla üst öğe eklemeye çalıştığında oluşur. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDrivesParentLimit",
"message": "A shared drive item must have exactly one parent."
}
],
"code": 403,
"message": "A shared drive item must have exactly one parent."
}
}
Bu hatayı düzeltmek için Drive kısayollarını kullanarak dosyaya birden fazla bağlantı ekleyin. Bir kısayolun yalnızca bir üst öğesi olsa da kısayol dosyası ek konumlara kopyalanabilir. Daha fazla bilgi için Drive dosyasına kısayol oluşturma başlıklı makaleyi inceleyin.
UrlLeaseLimitExceeded
Bu hata, Google Play oyun verileri uygulamanız aracılığıyla kaydedilmeye çalışılırken ortaya çıkar. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "UrlLeaseLimitExceeded",
"message": "Too many pending uploads for this snapshot. Please finish or cancel some before creating more."
}
],
"code": 403,
"message": "Too many pending uploads for this snapshot. Please finish or cancel some before creating more."
}
}
Bu hatayı düzeltmek için daha fazla anlık görüntü oluşturmadan önce anlık görüntü yüklemelerini tamamlayın veya iptal edin.
userRateLimitExceeded
Bu hata, kullanıcı başına sınıra ulaşıldığında ortaya çıkar. Bu, Google Cloud Console'daki veya Drive arka ucundaki bir sınır olabilir. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "userRateLimitExceeded",
"message": "User Rate Limit Exceeded"
}
],
"code": 403,
"message": "User Rate Limit Exceeded"
}
}
Bu hatayı düzeltmek için aşağıdakilerden birini deneyin:
Google Cloud projesinde kullanıcı başına kotayı artırın. Daha fazla bilgi için kota artışı isteyin.
Bir kullanıcı, Google Workspace hesabındaki birçok kullanıcı adına çok sayıda istek gönderiyorsa
quotaUser
parametresini kullanarak alan genelinde yetkilendirmeye sahip bir hizmet hesabı oluşturabilirsiniz.İsteği yeniden denemek için eksponansiyel geri yükleme kullanın.
Drive API sınırları hakkında bilgi edinmek için Kullanım sınırları başlıklı makaleyi inceleyin.
404 hataları
Bu hatalar, istenen kaynağa erişilemediği veya kaynağın mevcut olmadığı anlamına gelir.
notFound
Bu hata, kullanıcının bir dosyaya okuma erişimi olmadığında veya dosya mevcut olmadığında ortaya çıkar. Aşağıdaki JSON örneği bu hatanın temsilidir:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "notFound",
"message": "File not found {fileId}"
}
],
"code": 404,
"message": "File not found: {fileId}"
}
}
Bu hatayı düzeltmek için:
- Dosya ortak bir Drive'da bulunuyorsa ve
files.get
yöntemini kullanıyorsanızsupportsAllDrives
sorgu parametresinintrue
olarak ayarlandığından emin olun. - Kullanıcıya, dosya için okuma erişimi olmadığını veya dosyanın mevcut olmadığını bildirin.
- Kullanıcıdan dosyanın sahibiyle iletişime geçip dosya için izin istemesini isteyin.
429 hataları
Bu hatalar, API'ye çok hızlı bir şekilde çok fazla istek gönderildiği anlamına gelir.
rateLimitExceeded
Bu hata, kullanıcı belirli bir süre içinde çok fazla istek gönderdiğinde ortaya çıkar. Aşağıdaki JSON örneği bu hatanın bir temsilidir:
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "rateLimitExceeded",
"message": "Rate Limit Exceeded"
}
],
"code": 429,
"message": "Rate Limit Exceeded"s
}
}
Bu hatayı düzeltmek için isteği yeniden denemek üzere eksponansiyel geri yükleme kullanın.
500, 502, 503, 504 hataları
Bu hatalar, istek işlenirken beklenmedik bir sunucu hatası oluştuğunda ortaya çıkar. İsteğin zamanlamasının başka bir istekle çakışması veya desteklenmeyen bir işlem isteği (ör. sitenin tamamı yerine Google Sites'teki tek bir sayfanın izinlerini güncellemeye çalışmak) gibi çeşitli sorunlar bu hatalara neden olabilir.
Aşağıda, 5xx hatalarının bir listesi verilmiştir:
- 500 Arka uç hatası
- 502 Hatalı Ağ Geçidi
- 503 Hizmet Kullanılamıyor
- 504 Ağ Geçidi Zaman Aşımı
Bu hatayı düzeltmek için isteği yeniden denemek üzere eksponansiyel geri yükleme kullanın.