Konfigurowanie Google Cloud i OAuth

Dostęp do interfejsu Google Health API jest zapewniany przez Google Cloud. Aby włączyć interfejs API i autoryzować konto Google, musisz mieć projekt w chmurze Google.

Niezależnie od tego, czy jesteś obecnym deweloperem interfejsu Fitbit API, czy dopiero zaczynasz korzystać z interfejsu Google Health API, musisz wykonać ten krok, aby wywoływać interfejs API.

Tworzenie projektu i klienta OAuth

Kliknij przycisk Włącz interfejs API i uzyskaj identyfikator klienta OAuth 2.0, aby włączyć interfejs Google Health API i uzyskać identyfikator klienta OAuth 2.0:

  1. Jeśli masz już projekt w chmurze Google Cloud, którego chcesz używać w interfejsie Google Health API, najpierw zaloguj się na konto administratora tego projektu. Następnie wybierz istniejący projekt z listy dostępnych projektów po kliknięciu przycisku. W przeciwnym razie utwórz nowy projekt.
  2. Gdy pojawi się pytanie „Skąd dzwonisz?”, wybierz Serwer internetowy.
  3. Wpisz https://www.google.com jako wartość pola Autoryzowane identyfikatory URI przekierowania. Aby uzyskać kod autoryzacji za pomocą protokołu OAuth 2.0, wymagany jest identyfikator URI przekierowania.
  4. Po zakończeniu konfiguracji skopiuj identyfikator klienta OAuth 2.0 i tajny klucz klienta oraz pobierz na komputer lokalny plik JSON z danymi logowania.
Włącz interfejs API i uzyskaj identyfikator klienta OAuth 2.0

Jeśli chcesz ręcznie skonfigurować projekt Google Cloud lub sprawdzić konfigurację i ponownie pobrać dane logowania:

  1. Włącz Google Health API na stronie Włączanie interfejsu API.
  2. Uzyskaj identyfikator klienta OAuth 2.0 na stronie Dane logowania.

Więcej informacji o konfigurowaniu OAuth 2.0 za pomocą konsoli Google znajdziesz w artykule Używanie protokołu OAuth 2.0 na potrzeby dostępu do interfejsów API Google.

Dodawanie użytkowników testowych

Domyślnie nowo utworzeni klienci OAuth są w stanie niezweryfikowanym i mają limit 100 użytkowników zarówno na potrzeby testowania, jak i środowiska produkcyjnego. Aby w tym okresie włączyć autoryzację, musisz ręcznie dodać adres e-mail każdego użytkownika do listy użytkowników testowych w konfiguracji projektu.

Zaktualizuj listę użytkowników testowych na stronie Odbiorcy:

  1. Na tej stronie powinny być widoczne te ustawienia: „Stan publikowania” ustawiony na Testowanie i „Typ użytkownika” ustawiony na Zewnętrzny.
  2. W sekcji „Użytkownicy testowi” kliknij + Dodaj użytkowników. Wpisz adres e-mail użytkowników testowych, którzy powinni mieć możliwość przyznania aplikacji uprawnień dostępu do danych o zdrowiu.
  3. Kliknij Zapisz.

Obsługa ponad 100 użytkowników za pomocą interfejsu Google Health API wymaga przejścia weryfikacji bezpieczeństwa przez firmę zewnętrzną. Więcej informacji znajdziesz w Centrum pomocy dotyczącym weryfikacji aplikacji OAuth.

Dodawanie zakresów

Na stronie Dostęp do danych musisz określić zakresy, do których klient ma dostęp:

  1. Na tej stronie kliknij Dodaj lub usuń zakresy.
  2. W kolumnie API wyszukaj „Google Health API”. Wybierz zakresy, których potrzebujesz w swojej aplikacji.
  3. Po wybraniu wszystkich potrzebnych zakresów kliknij Aktualizuj, aby wrócić na stronę Dostęp do danych.
  4. Kliknij Zapisz.

Konfigurowanie identyfikatora klienta zostało zakończone. Teraz możesz wywoływać interfejs Google Health API.

Biblioteki klienta OAuth2

Listę dostępnych bibliotek klienta OAuth2 używanych do integracji z popularnymi platformami znajdziesz w artykule Używanie OAuth 2.0 na potrzeby dostępu do interfejsów API Google.

Tokeny odświeżania

Aby zachować długoterminowy dostęp do interfejsów API Google bez konieczności ciągłego ponownego uwierzytelniania użytkownika, aplikacja musi używać tokena odświeżania. Szczegółowe informacje o wdrażaniu, w tym konkretne żądania HTTP i wymagane parametry, znajdziesz w dokumentacji platformy tożsamości Google.

Aby wymienić token odświeżania na token dostępu, wyślij wywołanie HTTPS POST do punktu końcowego tokena OAuth 2.0 Google. Poniższy fragment kodu pokazuje przykładowe żądanie i odpowiedź:

Żądanie

curl -L -X POST 'https://oauth2.googleapis.com/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'client_id=client-id&client_secret=client-secret&refresh_token=refresh-token&grant_type=refresh_token'

Odpowiedź

{
  "access_token": "access-token",
  "expires_in": 3599,
  "scope": "scope-list",
  "token_type": "Bearer",
  "refresh_token": "refresh-token",
  "refresh_token_expires_in": 112154
}

Działanie tokena podczas testowania

Pamiętaj, jak działają tokeny odświeżania w zależności od stanu publikacji projektu Google Cloud:

  • Tryb testowania: Jeśli ekran zgody OAuth jest skonfigurowany ze stanem publikacji „Testowanie”, wydane tokeny odświeżania są oparte na czasie i wygasają po 7 dniach. W tym okresie otrzymasz jeden token odświeżania, który pozostanie ważny i będzie można go używać do uzyskiwania nowych tokenów dostępu do momentu wygaśnięcia.
  • Tryb opublikowany: gdy aplikacja zostanie przeniesiona do stanu „W produkcji”, tokeny odświeżania zwykle nie wygasają, chyba że zostaną unieważnione lub pozostaną nieużywane przez dłuższy czas (zazwyczaj 6 miesięcy).

Aby zapewnić użytkownikom wygodę, opublikuj aplikację przed przeniesieniem jej do środowiska produkcyjnego. Pozwoli to uniknąć wygaśnięcia tokena po 7 dniach.