Naprawianie błędów

Interfejs Google Drive API zwraca 2 poziomy informacji o błędach:

  • Kody błędów HTTP i komunikaty w nagłówku.
  • Obiekt JSON w treści odpowiedzi z dodatkowymi szczegółami, które mogą pomóc w określeniu sposobu obsługi błędu.

Aplikacje na Dysku Google powinny przechwytywać i obsługiwać wszystkie błędy, które mogą wystąpić podczas korzystania z interfejsu REST API. Ten przewodnik zawiera instrukcje rozwiązywania konkretnych błędów interfejsu Drive API.

Podsumowanie kodów stanu HTTP

Kod błędu Opis
200 - OK Żądanie zostało zrealizowane (jest to standardowa odpowiedź na udane żądania HTTP).
400 - Bad Request Nie możemy zrealizować prośby z powodu błędu klienta w żądaniu.
401 - Unauthorized Żądanie zawiera nieprawidłowe dane logowania.
403 - Forbidden Żądanie zostało odebrane i zrozumiane, ale użytkownik nie ma uprawnień do jego wykonania.
404 - Not Found Nie udało się znaleźć żądanej strony.
429 - Too Many Requests Zbyt wiele żądań do interfejsu API.
500, 502, 503, 504 - Server Errors Podczas przetwarzania żądania wystąpił nieoczekiwany błąd.

Błędy 400

Te błędy oznaczają, że żądanie było nieakceptowalne, często z powodu braku wymaganego parametru.

badRequest

Ten błąd może wystąpić z jednej z tych przyczyn w kodzie:

  • Nie podano wymaganego pola ani parametru.
  • Podana wartość lub kombinacja podanych pól jest nieprawidłowa.
  • Próbowano dodać zduplikowanego rodzica do pliku na Dysku.
  • Próbowano dodać element nadrzędny, który utworzyłby cykl w grafie katalogu.

Poniższy przykład JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd, sprawdź pole message i odpowiednio dostosuj kod.

illegalKeepForeverModification

Ten błąd występuje podczas próby ustawienia wartości false dla wersji pliku binarnego oznaczonej jako „KeepForever”. Poniższy przykład JSON przedstawia ten błąd:

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "illegalKeepForeverModification",
    "message": "Bad Request. Cannot update a revision to false that is marked as keepForever."
   }
  ],
  "code": 400,
  "message": "Bad Request. Cannot update a revision to false that is marked as keepForever."
 }
}

Aby naprawić ten błąd, trwale usuń wersję pliku binarnego, aby usunąć ustawienie „KeepForever”.

invalidSharingRequest

Ten błąd występuje z kilku powodów. Aby określić przyczynę, sprawdź pole reason zwróconego kodu JSON. Ten błąd występuje najczęściej z tych powodów:

  • Udostępnianie się powiodło, ale e-mail z powiadomieniem nie został dostarczony.
  • Zmiana listy kontroli dostępu (ACL) jest niedozwolona dla tego użytkownika.

Pole message wskazuje rzeczywisty błąd.

Udostępnianie się powiodło, ale e-mail z powiadomieniem nie został dostarczony

Poniższy przykład JSON przedstawia ten błąd:

{
  "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"
  }
}

Aby rozwiązać ten problem, poinformuj użytkownika (udostępniającego), że nie udało się udostępnić pliku, ponieważ nie można było wysłać e-maila z powiadomieniem na docelowy adres e-mail. Użytkownik powinien sprawdzić, czy ma prawidłowy adres e-mail i czy może odbierać na niego wiadomości.

Zmiana listy ACL jest niedozwolona dla tego użytkownika

Poniższy przykład JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "invalidSharingRequest",
        "message": "Bad Request. User message: \"ACL change not allowed.\""
      }
    ],
    "code": 400,
    "message": "Bad Request"
  }
}

Aby naprawić ten błąd, sprawdź ustawienia udostępniania domeny Google Workspace, do której należy plik. Ustawienia mogą zabraniać udostępniania poza domenę lub udostępnianie dysku współdzielonego może być niedozwolone.

Błędy 401

Te błędy oznaczają, że żądanie nie zawiera prawidłowego tokena dostępu.

authError

Ten błąd występuje, gdy używany token dostępu wygasł lub jest nieprawidłowy. Ten błąd może być też spowodowany brakiem autoryzacji w przypadku zakresów, o które prosisz. Poniższy przykład JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "authError",
        "message": "Invalid Credentials",
        "locationType": "header",
        "location": "Authorization",
      }
    ],
    "code": 401,
    "message": "Invalid Credentials"
  }
}

Aby naprawić ten błąd, odśwież token dostępu za pomocą długotrwałego tokena odświeżania. Jeśli to się nie uda, przeprowadź użytkownika przez proces OAuth opisany w artykule Wybieranie zakresów interfejsu Google Drive API.

fileNotDownloadable

Ten błąd występuje, gdy próbujesz użyć metody revisions.get z parametrem adresu URL alt=media w dokumencie Google Workspace. Ten przykładowy kod JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd, wykonaj jedną z tych czynności:

  • Usuń parametr adresu URL alt=media, jeśli chcesz wyświetlić metadane konkretnej wersji, np. typ MIME.
  • Użyj metody files.export, aby wyeksportować zawartość dokumentu Google Workspace w postaci bajtów. Więcej informacji znajdziesz w artykule Eksportowanie treści dokumentu Google Workspace.

Błędy 403

Te błędy oznaczają, że limit użycia został przekroczony lub użytkownik nie ma odpowiednich uprawnień. Aby określić przyczynę, sprawdź pole reason w zwróconym pliku JSON.

Informacje o limitach interfejsu Drive API znajdziesz w artykule Limity wykorzystania. Informacje o limitach folderów na Dysku znajdziesz w artykule Limity liczby plików i folderów.

activeItemCreationLimitExceeded

Błąd activeItemCreationLimitExceeded występuje, gdy przekroczony zostanie limit liczby utworzonych produktów na koncie. Każdy użytkownik może mieć maksymalnie 500 milionów elementów utworzonych na koncie. Więcej informacji znajdziesz w sekcji Limit użytkownik-produkt.

{
 "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."
 }
}

Aby naprawić ten błąd:

  1. Poinformuj użytkownika, że Dysk uniemożliwia tworzenie na kontach więcej niż 500 milionów elementów.

  2. Jeśli użytkownik musi utworzyć elementy na tym samym koncie, poproś go o trwałe usunięcie niektórych obiektów. W przeciwnym razie mogą użyć innego konta, które już spełnia to wymaganie.

appNotAuthorizedToFile

Ten błąd występuje, gdy aplikacja nie znajduje się na liście ACL pliku. Ten błąd uniemożliwia użytkownikowi otwarcie pliku w Twojej aplikacji. Poniższy przykładowy kod JSON przedstawia ten błąd:

{
  "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}."
  }
}

Aby naprawić ten błąd, wykonaj jedną z tych czynności:

  • Otwórz selektor Dysku Google i poproś użytkownika o otwarcie pliku.
  • Poproś użytkownika o otwarcie pliku za pomocą menu kontekstowego Otwórz za pomocą w interfejsie Dysku w Twojej aplikacji.
  • Użyj metody files.get, aby sprawdzić pole isAppAuthorized w zasobie files i upewnić się, że aplikacja utworzyła lub otworzyła plik.

cannotModifyInheritedTeamDrivePermission

Ten błąd występuje, gdy użytkownik próbuje zmodyfikować odziedziczone uprawnienia elementu na dysku współdzielonym. Nie można usunąć odziedziczonych uprawnień dotyczących elementu na dysku współdzielonym. Poniższy przykład JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd, użytkownik musi dostosować uprawnienia bezpośredniego lub pośredniego elementu nadrzędnego, z którego zostały one odziedziczone. Więcej informacji znajdziesz w artykule Jak działają uprawnienia. Możesz też pobrać zasób permissions, aby sprawdzić, czy uprawnienia dotyczące tego elementu na dysku współdzielonym są odziedziczone czy zastosowane bezpośrednio.

dailyLimitExceeded

Ten błąd występuje, gdy limit interfejsu API w Twoim projekcie został osiągnięty. Poniższy przykład JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "usageLimits",
        "reason": "dailyLimitExceeded",
        "message": "Daily Limit Exceeded"
      }
    ],
    "code": 403,
    "message": "Daily Limit Exceeded"
  }
}

Ten błąd pojawia się, gdy właściciel aplikacji ustawi limit wykorzystania określonego zasobu. Aby naprawić ten błąd, usuń wszelkie limity wykorzystania dla limitu „Zapytania dziennie”.

domainPolicy

Ten błąd występuje, gdy zasady dotyczące domeny użytkownika nie zezwalają aplikacji na dostęp do Dysku. Poniższy przykładowy kod JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "domainPolicy",
        "message": "The domain administrators have disabled Drive apps."
      }
    ],
    "code": 403,
    "message": "The domain administrators have disabled Drive apps."
  }
}

Aby naprawić ten błąd:

  1. Poinformuj użytkownika, że domena nie zezwala aplikacji na dostęp do plików na Dysku.
  2. Poproś użytkownika, aby skontaktował się z administratorem domeny i poprosił o dostęp do Twojej aplikacji.

downloadRestrictedForRevision

Ten błąd występuje, gdy użytkownik nie może pobrać wersji pliku binarnego. Poniższy przykład JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "download_restricted_for_revision",
        "message": "This revision cannot be downloaded by the authenticated user."
      }
    ],
    "code": 403,
    "message": "This revision cannot be downloaded by the authenticated user."
  }
}

Aby rozwiązać ten problem, poinformuj użytkownika, że wersje plików binarnych można pobrać tylko wtedy, gdy są one oznaczone jako „Przechowuj bezterminowo”. Więcej informacji znajdziesz w artykule Określanie wersji, które mają być zapisywane przed automatycznym usunięciem.

fileOwnerNotMemberOfTeamDrive

Ten błąd występuje, gdy próbujesz przenieść plik na dysk współdzielony, a właściciel pliku nie jest użytkownikiem tego dysku. Poniższy przykład JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd:

  1. Dodaj użytkownika do dysku współdzielonego za pomocą opcji role=owner. Więcej informacji znajdziesz w artykule Udostępnianie plików, folderów i dysków.

  2. Dodaj plik do dysku współdzielonego. Więcej informacji znajdziesz w artykule Tworzenie folderów i wypełnianie ich zawartością.

fileWriterTeamDriveMoveInDisabled

Ten błąd występuje, gdy administrator domeny nie zezwolił użytkownikom z adresem role=writer na przenoszenie elementów na dysk współdzielony. Użytkownik, który próbuje przenieść elementy, ma mniej uprawnień niż jest to dozwolone na docelowym dysku współdzielonym. Poniższy przykład JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd, użyj tego samego konta administratora na źródłowym i docelowym dysku współdzielonym.

insufficientFilePermissions

Ten błąd występuje, gdy użytkownik nie ma uprawnień do zapisu w pliku, a aplikacja próbuje go zmodyfikować. Poniższy przykład JSON przedstawia ten błąd:

{
  "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}."
  }
}

Aby rozwiązać ten problem, poproś użytkownika o skontaktowanie się z właścicielem pliku i poproś o dostęp do edycji. Poziomy dostępu użytkowników możesz też sprawdzić w metadanych pobranych za pomocą metody files.get i wyświetlić interfejs użytkownika tylko do odczytu, gdy brakuje uprawnień.

myDriveHierarchyDepthLimitExceeded

Błąd myDriveHierarchyDepthLimitExceeded występuje, gdy przekroczono limit liczby zagnieżdżonych poziomów folderów. Mój dysk użytkownika może zawierać maksymalnie 100 poziomów zagnieżdżonych folderów. Więcej informacji znajdziesz w artykule Limit głębokości folderu.

{
 "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/workspace/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/workspace/drive/api/guides/handle-errors#nested-folder-levels."
 }
}

Aby naprawić ten błąd:

  1. Poinformuj użytkownika, że Dysk uniemożliwia umieszczanie folderów na poziomie zagnieżdżenia większym niż 100.
  2. Jeśli użytkownik musi utworzyć kolejny zagnieżdżony folder, poproś go o reorganizację zamierzonego folderu nadrzędnego, aby miał mniej niż 100 poziomów, lub o użycie innego folderu nadrzędnego, który już spełnia to wymaganie.

numChildrenInNonRootLimitExceeded

Ten błąd występuje, gdy zostanie przekroczony limit liczby elementów podrzędnych (folderów, plików i skrótów) w folderze. Limit elementów w folderze wynosi 500 tys. w przypadku folderów, plików i skrótów znajdujących się bezpośrednio w folderze. Elementy zagnieżdżone w podfolderach nie wliczają się do tego limitu 500 tys. elementów. Więcej informacji o limitach dotyczących folderów na Dysku znajdziesz w artykule Limity dotyczące folderów na Dysku Google.

Poniższy przykład JSON przedstawia ten błąd:

{
 "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."
 }
}

Aby naprawić ten błąd, wykonaj jedną z tych czynności:

  • Poinformuj użytkownika,że Dysk uniemożliwia tworzenie folderów zawierających więcej niż 500 tys. elementów.
  • Jeśli użytkownik musi dodać więcej elementów do pełnego folderu, poproś go o przekształcenie folderu tak, aby zawierał mniej niż 500 tys. elementów, lub o użycie podobnego folderu, który już zawiera mniej elementów.

rateLimitExceeded

Ten błąd występuje, gdy projekt osiągnie limit żądań. Ten limit zależy od typu żądania. Poniższy przykład JSON przedstawia ten błąd:

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "message": "Rate Limit Exceeded",
    "reason": "rateLimitExceeded",
   }
  ],
  "code": 403,
  "message": "Rate Limit Exceeded"
 }
}

Aby naprawić ten błąd, wykonaj jedną z tych czynności:

sharingRateLimitExceeded

Ten błąd występuje, gdy użytkownik osiągnie limit udostępniania. Często jest on powiązany z limitem e-maili. Poniższy przykład JSON przedstawia ten błąd:

{
 "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"
 }
}

Aby naprawić ten błąd:

  1. Nie wysyłaj e-maili, gdy udostępniasz dużą liczbę plików.
  2. Jeśli jeden użytkownik wysyła wiele żądań w imieniu wielu użytkowników konta Google Workspace, rozważ użycie konta usługi z delegowaniem w całej domenie za pomocą parametru quotaUser.

storageQuotaExceeded

Ten błąd występuje, gdy użytkownik osiągnie limit miejsca na dane. Ten przykładowy kod JSON przedstawia ten błąd:

{
 "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."
 }
}

Aby naprawić ten błąd:

  1. Sprawdź limity miejsca na koncie Dysku. Więcej informacji znajdziesz w artykule Limity miejsca na dane i przesyłania w Google Workspace.

  2. Zarządzanie miejscem na dane na Dysku, w Gmailu i Zdjęciach Google

  3. Kup dodatkowe miejsce na dane w Google

teamDriveFileLimitExceeded

Ten błąd występuje, gdy użytkownik próbuje przekroczyć ścisły limit elementów na dysku współdzielonym. Każdy folder na dysku współdzielonym użytkownika może zawierać maksymalnie 500 tys. elementów, w tym plików, folderów i skrótów. Ten limit jest uzależniony od liczby elementów, a nie od miejsca na dane. Więcej informacji znajdziesz w artykule Ograniczenia związane z dyskami współdzielonymi na Dysku Google.

Poniższy przykład JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd, zmniejsz liczbę elementów na dysku współdzielonym. Dyski współdzielone, na których jest za dużo plików, mogą powodować problemy z porządkowaniem i znajdowaniem treści.

teamDriveHierarchyTooDeep

Błąd teamDriveHierarchyTooDeep występuje, gdy przekroczono limit liczby zagnieżdżonych poziomów folderów na dysku współdzielonym. Dysk współdzielony użytkownika nie może zawierać więcej niż 100 poziomów zagnieżdżonych folderów. Więcej informacji znajdziesz w artykule Limit głębokości folderu.

{
 "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."
 }
}

Aby naprawić ten błąd:

  1. Poinformuj użytkownika, że dyski współdzielone uniemożliwiają umieszczanie folderów na poziomie zagnieżdżenia większym niż 100.
  2. Jeśli użytkownik musi utworzyć kolejny zagnieżdżony folder, poproś go o reorganizację zamierzonego folderu nadrzędnego, aby miał mniej niż 100 poziomów, lub o użycie innego folderu nadrzędnego, który już spełnia to wymaganie.

teamDriveMembershipRequired

Ten błąd występuje, gdy użytkownik próbuje uzyskać dostęp do dysku współdzielonego, na którym nie jest członkiem. Poniższy przykład JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "teamDriveMembershipRequired",
        "message": "The attempted action requires shared drive membership."
      }
    ],
    "code": 403,
    "message": "The attempted action requires shared drive membership."
  }
}

Aby naprawić ten błąd, wykonaj jedną z tych czynności:

  1. Poproś menedżera dysku współdzielonego o dodanie Cię z odpowiednimi uprawnieniami do wykonania działania.

  2. Zapoznaj się z rolami i uprawnieniami na Dysku, aby dowiedzieć się, kto może uzyskiwać dostęp do dysków współdzielonych i nimi zarządzać. Dodatkowe informacje o poziomach dostępu znajdziesz też w artykule Tworzenie dysku współdzielonego.

teamDrivesFolderMoveInNotSupported

Ten błąd występuje, gdy użytkownik próbuje przenieść folder z Mojego dysku na dysk współdzielony. Poniższy przykład JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd, wykonaj jedną z tych czynności:

  • Przenieś poszczególne elementy z folderu na dysk współdzielony za pomocą interfejsu Drive API. Ustaw parametr supportsAllDrives=true, aby wskazać obsługę zarówno Mojego dysku, jak i dysków współdzielonych.

  • Jeśli musisz przenieść folder na dysk współdzielony, użyj interfejsu Dysku. Więcej informacji znajdziesz w artykule Przenoszenie folderów na dyski współdzielone jako administrator.

teamDrivesParentLimit

Ten błąd występuje, gdy użytkownik próbuje dodać więcej niż jednego rodzica do elementu na dysku współdzielonym. Poniższy przykład JSON przedstawia ten błąd:

{
  "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."
  }
}

Aby naprawić ten błąd, użyj skrótów do Dysku, aby dodać do pliku wiele linków. Skrót może mieć tylko jeden element nadrzędny, ale plik skrótu można skopiować do dodatkowych lokalizacji. Więcej informacji znajdziesz w artykule Tworzenie skrótu do pliku na Dysku.

UrlLeaseLimitExceeded

Ten błąd występuje podczas próby zapisania danych gry w Google Play za pomocą aplikacji. Poniższy przykład JSON przedstawia ten błąd:

{
 "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."
 }
}

Aby naprawić ten błąd, przed utworzeniem kolejnych zrzutów dysku dokończ lub anuluj przesyłanie zrzutów.

userRateLimitExceeded

Ten błąd występuje, gdy osiągnięto limit liczby żądań na użytkownika. Może to być limit w konsoli Google Cloud lub limit w backendzie Dysku. Poniższy przykład JSON przedstawia ten błąd:

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "userRateLimitExceeded",
    "message": "User Rate Limit Exceeded"
   }
  ],
  "code": 403,
  "message": "User Rate Limit Exceeded"
 }
}

Aby naprawić ten błąd, wykonaj jedną z tych czynności:

Informacje o limitach interfejsu Drive API znajdziesz w artykule Limity wykorzystania.

Błędy 404

Te błędy oznaczają, że żądany zasób jest niedostępny lub nie istnieje.

notFound

Ten błąd występuje, gdy użytkownik nie ma uprawnień do odczytu pliku lub plik nie istnieje. Poniższy przykład JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "notFound",
        "message": "File not found {fileId}"
      }
    ],
    "code": 404,
    "message": "File not found: {fileId}"
  }
}

Aby naprawić ten błąd:

  1. Jeśli plik znajduje się na dysku współdzielonym i używasz metody files.get, upewnij się, że parametr zapytania supportsAllDrives ma wartość true.
  2. Poinformuj użytkownika, że nie ma uprawnień do odczytu pliku lub że plik nie istnieje.
  3. Poinformuj użytkownika, aby skontaktował się z właścicielem pliku i poprosił o dostęp do niego.

Błędy 429

Te błędy oznaczają, że do interfejsu API wysłano zbyt wiele żądań w zbyt krótkim czasie.

rateLimitExceeded

Ten błąd występuje, gdy użytkownik wysłał zbyt wiele żądań w określonym czasie. Poniższy przykład JSON przedstawia ten błąd:

{
  "error": {
    "errors": [
      {
        "domain": "usageLimits",
        "reason": "rateLimitExceeded",
        "message": "Rate Limit Exceeded"
      }
    ],
    "code": 429,
    "message": "Rate Limit Exceeded"s
  }
}

Aby naprawić ten błąd, użyj algorytmu Exponential backoff do ponowienia żądania.

Błędy 500, 502, 503 i 504

Te błędy występują, gdy podczas przetwarzania żądania wystąpi nieoczekiwany błąd serwera. Przyczyną tych błędów mogą być różne problemy, np. czas żądania pokrywający się z innym żądaniem lub żądanie nieobsługiwanego działania, takiego jak próba zaktualizowania uprawnień do pojedynczej strony w Usługach Google zamiast do całej witryny.

Oto lista błędów 5xx:

  • 500 Błąd backendu
  • 502 Nieprawidłowa brama
  • 503 Usługa niedostępna
  • 504 Przekroczony czas bramy

Aby naprawić ten błąd, użyj algorytmu Exponential backoff do ponowienia żądania.