Obsługa błędów pakietów SDK dla konsumentów
Pakiet SDK Consumer SDK wysyła do aplikacji konsumenta błędy aktualizacji podróży za pomocą wywołania zwrotnego
. Parametr wywołania zwrotnego jest typem zwrotu specyficznym dla platformy (
TripUpdateError
na Androidzie oraz
NSError
w systemie iOS).
Wyodrębnianie kodów stanu
Błędy przekazywane do wywołania zwrotnego są zwykle błędami gRPC. Możesz również wyodrębnienia z nich dodatkowych informacji w postaci kodu stanu. W przypadku atrybutu pełna lista kodów stanu, patrz Kody stanu i ich zastosowania w gRPC.
Zinterpretuj kody stanu
Kody stanu obejmują dwa rodzaje błędów: błędy serwera i sieci oraz po stronie klienta.
Błędy serwera i sieci
Poniższe kody stanu dotyczą błędów sieci lub serwera i nie muszą nic robić. Pakiet SDK klienta automatycznie po takim okresie.
Kod stanu | Opis |
---|---|
ANULOWANO | Serwer przestał wysyłać odpowiedź. Przyczyną tej sytuacji jest zwykle problem z serwerem. |
ANULOWANO | Serwer zakończył odpowiedź wychodzącą. To normalne.
ma miejsce, gdy
aplikacja jest wysyłana w tle lub po zmianie stanu Aplikacja dla klientów indywidualnych. |
PRZERW | |
DEADLINE_EXCEEDED | Oczekiwanie na odpowiedź serwera trwało zbyt długo. |
PRODUKT NIEDOSTĘPNY | Serwer był niedostępny. Przyczyną problemu jest zwykle sieć . |
Błędy klienta
Poniższe kody stanu dotyczą błędów klienta i musisz podjąć działania, aby i ją rozwiązać. Pakiet SDK klienta będzie ponawiać próby odświeżenia podróży, dopóki nie aby zakończyć udostępnianie ścieżki, ale nie zostanie ono przywrócone, dopóki nie podejmiesz działań.
Kod stanu | Opis |
---|---|
NIEPRAWIDŁOWY_ARG | Aplikacja konsumenta podała nieprawidłową nazwę podróży. Nazwa podróży musi
musi mieć format providers/{provider_id}/trips/{trip_id} .
|
NOT_FOUND | Podróż nie została utworzona. |
PERMISSION_DENIED | Aplikacja konsumenta ma niewystarczające uprawnienia. Ten błąd występuje, gdy:
|
RESOURCE_EXHAUSTED | Limit zasobów wynosi zero lub tempo przepływu ruchu przekracza ograniczenia prędkości. |
BEZ UWIERZYTELNIANIA | Uwierzytelnianie nie powiodło się z powodu nieprawidłowego tokena JWT. Ten występuje, gdy token JWT jest podpisany bez identyfikatora podróży lub po wygaśnięciu tokena JWT. |