Poniższe sekcje opisują modele błędów dla zasobów v2 i v1, odpowiednio.
Model błędu zasobu v2
Domyślnie metody odpowiadają z 200-ok status OK. Gdy wnioski nie powodują sukcesu, Open Cloud wysyłuje standardowe kody błędów. Wszystkie odpowiedzi błędów mają ten sam format, co obejmuje:
- code - Reprezentuje kod statusu HTTP.
- message - Wiadomość, która wyjaśnia błąd.
- details - Obiekt zawierający więcej informacji szczegółowych błędu.
Błąd przykładu
{
"code": "INVALID_ARGUMENT",
"message": "The provided filter is invalid.",
"details": [
{
...
}
]
}
Kody
Poniższy tabela opisuje możliwe wartości dla code .
Kod | Status HTTP | Opis |
---|---|---|
INVALID_ARGUMENT | 400 | Przekazałeś nieprawidłowy argument, takich jak nieprawidłowy universeId. Możliwe, że masz również nieprawidłowe nagłówki, takie jak Content-Length i Content-Type . |
PERMISSION_DENIED | 403 | Twoje zapytanie nie ma wystarczające uprawnienia lub zakresu, aby wykonać operację. |
NOT_FOUND | 404 | System nie może znaleźć Twoich zasobów, takich jak wpis do przechowywania danych. |
ABORTED | 409 | Operacja została aborcja. |
RESOURCE_EXHAUSTED | 429 | Nie masz wystarczająco dużo quota, aby wykonać operację, zwykle z powodu wysyłania zbyt wielu żądań. |
CANCELLED | 499 | System kończy prośba, zwykle z powodu czasu wygasania strony klienta. |
INTERNAL | 500 | Wewnętrzny błąd serwera, zwykle spowodowany przez błąd na serwerze. |
NOT_IMPLEMENTED | 501 | Serwer nie wdrożył metody API. |
UNAVAILABLE | 503 | Usługa jest niedostępna, zwykle zwracana, gdy serwer jest niedostępny. |
v1 Model Błędu Zasobu
Wszystkie odpowiedzi błędów mają ten sam, standardowy format, który obejmuje:
- Pole error, które jest wysokiego poziomowego powodem stosującym się do wszystkich punktów końcowych Open Cloud.
- Wyja?niaj?cy błąd message , który wyja?nia dalsze b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si? b??d? si
- Obiekt errorDetails, który pokrywa więcej informacji o błędzie, który jest specyficzny dla każdej API.
Aby zidentyfikować przyczynę korzenia błędu, zobacz wartość pola error i pola errorDetails. Użyj pola message jako uzupełnienia dla handlowania błędzami, ponieważ czasami może nie pokrywać tego samego poziomu szczegółowości co pol 2>errorDetails2>.
Standardowa odpowiedź na błąd serwera
{
"error": "INVALID_ARGUMENT",
"message": "Invalid cursor.",
"errorDetails": [
{
"errorDetailType": "DatastoreErrorInfo",
"datastoreErrorCode": "InvalidCursor"
}
]
}
Przykładowa odpowiedź błędu pokazuje wysokiego poziomu Open Cloud error jako
Wszystkie zamówione odpowiedzi na błędy mają taki sam format, co obejmuje:
Odpowiedź na błąd w przypadku błędu łączenia
{
"code": "INVALID_ARGUMENT",
"message": "Invalid cursor."
}
kod będzie zawierać stronę błędu wysokiego poziomu, a message będzie zawierać szczegóły związane z błędem
Kody
Zobacz poniższyą tabelę dla podsumowania wszystkich błędów Open Cloud o wysokim poziomie.
Kod statusu HTTP | Błąd | Opisy |
---|---|---|
400 | NIE_POPRAWNY_ARGUMENT | Przekazałeś nieprawidłowy argument, takich jak nieprawidłowy universeId. Możliwe, że masz również nieprawidłowe nagłówki, takie jak Content-Length i Content-Type . |
403 | NIEPEŁNOŚ_SCOPE | Prośba wymaga wyższych uprawnień niż zapewnia dostępowy token. |
403 | PERMISSION_ODRZUCONO | Twoje zapytanie nie ma wystarczającego zakresu, aby wykonać operację. |
404 | NIE_ZNALZIONO | System nie może znaleźć Twoich zasobów, takich jak sklepdanych. |
409 | Zakończone | Operacja została aborcja z powodu konfliktu, takiego jak opublikowanie miejsca, które nie jest częścią wszechświata. |
429 | RESOURCE_EXHAUSTED | Nie masz wystarczająco dużo quota, aby wykonać operację, zwykle z powodu wysyłania zbyt wielu żądań. |
499 | ANULOWANO | System kończy prośba, zwykle z powodu czasu wygasania strony klienta. |
500 | Wewnętrzny | Wewnętrzny błąd serwera. Typowo błąd serwera. |
501 | NIE_Zaimplementowane | Serwer nie wdrożył metody API. |
503 | Niedostępne | Usługa niedostępna. Większość serwerów jest obecnie niedostępnych. |