Z tego przewodnika dowiesz się, jak rozwiązywać typowe problemy, które mogą wystąpić podczas korzystania z Google Health API.
Błędy klienta 4xx
Kody stanu 4xx są zwracane, gdy występuje problem w kodzie aplikacji klienckiej. Więcej informacji o problemie znajdziesz w elementach treści odpowiedzi.
400 Nieprawidłowe żądanie
| Wiadomość | Opis | Rekomendacja |
|---|---|---|
| Żądanie zawiera nieprawidłowy argument. | Identyfikator typu danych {value} nie jest obsługiwany. | Sprawdź, czy typ danych, do którego się odwołujesz, jest obsługiwany przez punkt końcowy. |
| Otrzymano nieprawidłowy ładunek JSON. Liczby ósemkowe i szesnastkowe nie są prawidłowymi wartościami JSON. | Punkt końcowy dailyRollUp nie obsługuje wartości miesiąca i dnia reprezentowanych odpowiednio jako MM lub DD. Liczby jednocyfrowe nie powinny zaczynać się od 0 (zera). |
|
| Nieprawidłowy numer projektu w nazwie zasobu | Podczas usuwania lub aktualizowania subskrybenta za pomocą identyfikatora projektu Google Cloud w adresie URL żądania zamiast numeru projektu. Dotyczy to subskrypcji webhooków korzystających z punktu końcowego projects.subscribers. |
W adresie URL żądania użyj numeru projektu w chmurze Google, a nie identyfikatora projektu. |
401 Brak autoryzacji
| Wiadomość | Opis | Rekomendacja |
|---|---|---|
| Żądanie zawierało nieprawidłowe dane uwierzytelniające. Oczekiwany token dostępu OAuth 2, plik cookie logowania lub inne prawidłowe dane uwierzytelniające. | INVALID_AUTHENTICATOR: Token wygasł | Twój token dostępu wygasł. Użyj tokena odświeżania, aby uzyskać nowy token dostępu i token odświeżania, lub użytkownik powinien ponownie wyrazić zgodę na korzystanie z aplikacji. |
403 Zabroniony
| Wiadomość | Opis | Rekomendacja |
|---|---|---|
| Ten rozmówca nie ma uprawnień | Podczas tworzenia lub wyświetlania listy subskrybentów za pomocą identyfikatora projektu Google Cloud w adresie URL żądania zamiast numeru projektu. Dotyczy to subskrypcji webhooków korzystających z punktu końcowego projects.subscribers. |
W adresie URL żądania użyj numeru projektu w chmurze Google, a nie identyfikatora projektu. |
| Ten rozmówca nie ma uprawnień. | Nie udało się wygenerować UberMint z GaiaMint. | Użytkownikowi udało się przejść proces autoryzacji, ale wywołanie punktu końcowego nie powiodło się. Może się to zdarzyć, gdy starsze konto Fitbit wyrazi zgodę na korzystanie z aplikacji zamiast konta Google. Aby rozwiązać ten problem:
|
404 Nie znaleziono
| Wiadomość | Opis | Rekomendacja |
|---|---|---|
Nie można znaleźć żądanego adresu URL /v4/users/me/dataTypes/{dataType}/dataPoints na tym serwerze. |
Możliwe przyczyny:
|
Pobieranie identyfikatora użytkownika Fitbita
Aby rozwiązać problem użytkownika, może być konieczne sprawdzenie konta Google użytkownika zalogowanego w aplikacji mobilnej Fitbit.
Aby znaleźć identyfikator użytkownika Fitbita:
- Otwórz aplikację mobilną Fitbit.
- W prawym dolnym rogu naciśnij ikonę Ty.
- W górnym kafelku zawierającym nazwę użytkownika i datę dołączenia naciśnij link Edytuj profil.
- Przewiń do dołu strony. W sekcji Twoje konto wartość przypisana do identyfikatora to identyfikator użytkownika Fitbita. (Na przykład: CV5TKH)
Cofanie zgody na korzystanie z aplikacji
Podczas rozwiązywania problemów z połączeniem OAuth2 z Twoją aplikacją może być konieczne odłączenie konta użytkownika od aplikacji, a następnie ponowne przejście procesu autoryzacji.
Aby odłączyć konto Google od aplikacji:
- Otwórz aplikację mobilną Fitbit.
- W prawym górnym rogu naciśnij ikonę profilu użytkownika Fitbita.
- Naciśnij Zarządzaj kontem Google.
- Wybierz kafelek Dane i prywatność.
- Przewiń w dół do sekcji **Dane z aplikacji i usług, których używasz**. W sekcji Aplikacje i usługi wybierz Aplikacje i usługi innych firm.
- Na liście połączonych aplikacji znajdź nazwę swojej aplikacji i poproś użytkownika, aby ją wybrał.
- Naciśnij Usuń wszystkie połączenia z <nazwa aplikacji>.
- Poproś użytkownika, aby potwierdził cofnięcie zgody na korzystanie z Twojej aplikacji.
Po zakończeniu procesu cofania zgody użytkownik zostanie przekierowany z powrotem na stronę Aplikacje i usługi innych firm. Aby nazwa aplikacji zniknęła z listy, użytkownik może być zmuszony odświeżyć stronę.
Rozwiązywanie problemów z opóźnieniami w synchronizacji urządzeń
Podczas debugowania problemów związanych z brakującymi lub opóźnionymi danymi użytkownika warto sprawdzić model sparowanego urządzenia użytkownika i datę ostatniej synchronizacji.
Informacje o modelu (np. model opaski Fitbit lub smartwatcha) i data ostatniej synchronizacji są przydatne do rozwiązywania problemów i pobierania danych historycznych po opóźnieniach w synchronizacji.
Jeśli na przykład zauważysz nieoczekiwaną przerwę lub opóźnienie w dostarczaniu danych:
- Sprawdź, czy identyfikator użytkownika, o który wysyłasz zapytanie, jest zgodny z identyfikatorem użytkownika konta Fitbit
zalogowanego w aplikacji mobilnej. Aby uzyskać identyfikator użytkownika w aplikacji mobilnej
, przeczytaj artykuł Pobieranie identyfikatora użytkownika Fitbita.
Aby uzyskać identyfikator użytkownika z tokena dostępu, wywołaj punkt końcowy
getIdentity. - Sprawdź czas ostatniej synchronizacji, aby określić, kiedy urządzenie użytkownika ostatnio zsynchronizowało się z aplikacją mobilną Google Health.
- Jeśli urządzenie nie było ostatnio synchronizowane, oznacza to, że opóźnienie jest prawdopodobnie spowodowane tym, że urządzenie jest offline lub nie synchronizuje się z aplikacją mobilną, a nie problemem z interfejsem API.
- Gdy użytkownik otworzy aplikację mobilną i zsynchronizuje urządzenie, możesz pobrać dane historyczne z okresu od ostatniej synchronizacji.
Aby pobrać informacje o sparowanym urządzeniu użytkownika, wywołaj
users.pairedDevices.list
punkt końcowy. Zwraca on listę urządzeń zawierającą:
deviceVersion: nazwa produktu lub model urządzenia (np. „Charge 6”).lastSyncTime: sygnatura czasowa ostatniej udanej synchronizacji.