1. Wprowadzenie
OAuth 2.0 Playground to narzędzie internetowe, które umożliwia testowanie przepływów Google OAuth 2.0 bez pisania kodu. W tym ćwiczeniu dowiesz się, jak skonfigurować projekt w chmurze Google, uzyskać dane logowania, zainicjować przepływ autoryzacji za pomocą OAuth 2.0 Playground i wykonać pierwsze wywołanie jednego z punktów końcowych Google Health API.
Czego się nauczysz
- Jak skonfigurować identyfikator klienta w konsoli Google Cloud.
- Jak przejść przez przepływ autoryzacji Google OAuth 2.0, aby uzyskać token dostępu i token odświeżania za pomocą OAuth 2.0 Playground.
- Jak wywoływać punkty końcowe Google Health API za pomocą OAuth 2.0 Playground.
Czego potrzebujesz
- Konto Google
- Aplikacja mobilna Fitbit
- OAuth 2.0 Playground
Aby skonfigurować aplikację mobilną Fitbit:
- W Apple App Store lub Sklepie Google Play wyszukaj aplikację mobilną Fitbit i pobierz ją.
- Kliknij ikonę aplikacji.
- Kliknij Zaloguj się przez Google.
- Wybierz swoje konto Google i kliknij przycisk Dalej.
2. Konfigurowanie projektu w chmurze Google
Aby utworzyć identyfikator klienta i włączyć korzystanie z Google Health API, użyj konsoli Google Cloud.
- Zaloguj się w konsoli Google Cloud.
- Aby utworzyć nowy projekt:
- W selektorze projektów kliknij Wybierz projekt.
- W prawym górnym rogu kliknij Nowy projekt.
- Wpisz Nazwę projektu.
- Wpisz Lokalizację (np. „Brak organizacji”).
- Kliknij przycisk Utwórz.
- Wybierz projekt.
Włączanie Google Health API
- W lewym górnym rogu kliknij ikonę menu:

- Kliknij Interfejsy API i usługi > Biblioteka.
- Wyszukaj „Google Health API” i włącz je.
Konfigurowanie danych logowania OAuth
Jeśli nie jesteś w konsoli Google Cloud, otwórz konsolę Google Cloud.
- W lewym górnym rogu kliknij ikonę menu:

- Kliknij Interfejsy API i usługi > Dane logowania.
- U góry pośrodku kliknij + Utwórz dane logowania > Identyfikator klienta OAuth.
- Kliknij przycisk Skonfiguruj ekran zgody. Jeśli pojawi się komunikat „Platforma uwierzytelniania Google nie została jeszcze skonfigurowana”, kliknij przycisk Rozpocznij.
- W sekcji 1:
- Wpisz Nazwę aplikacji.
- Wpisz Adres e-mail pomocy dla użytkowników.
- Kliknij przycisk Dalej.
- W sekcji 2:
- Kliknij Zewnętrzne.
- Kliknij przycisk Dalej.
- W sekcji 3:
- Wpisz swój adres e-mail w polu Informacje kontaktowe.
- Kliknij przycisk Dalej.
- W sekcji 4:
- Zaznacz pole wyboru, aby zaakceptować Zasady dotyczące danych użytkowników w usługach API Google.
- Kliknij przycisk Utwórz.
- Otwórz Interfejsy API i usługi > Dane logowania i kliknij + Utwórz dane logowania > Identyfikator klienta OAuth.
- Jako typ aplikacji wybierz Aplikacja internetowa.
- Wpisz nazwę identyfikatora klienta.
- Pozostaw puste pole Autoryzowane źródła JavaScriptu.
- W sekcji Autoryzowane identyfikatory URI przekierowania kliknij + Dodaj URI i dodaj te identyfikatory URI:
https://www.google.comhttps://developers.google.com/oauthplayground
- Kliknij przycisk Utwórz.
- W konsoli Google pojawi się komunikat o utworzeniu identyfikatora klienta. Aby pobrać identyfikator klienta i tajny klucz klienta, kliknij link Pobierz plik JSON lub zapisz te wartości. Nie będzie można później odzyskać tajnego klucza klienta.
- Kliknij OK. Wrócisz na stronę „Identyfikatory klientów OAuth 2.0”.
- Identyfikator klienta zostanie dodany do projektu. Aby zobaczyć szczegóły, kliknij adres URL identyfikatora klienta.
Dodawanie użytkowników testowych
- W panelu po lewej stronie kliknij Odbiorcy. Powinien się wyświetlić "Stan publikowania" ustawiony na Testowanie oraz "Typ użytkownika" ustawiony na Zewnętrzny.
- W sekcji „Użytkownicy testowi” kliknij przycisk + Dodaj użytkowników. Wpisz adres e-mail dowolnego użytkownika, którego dane chcesz pobrać.
- Kliknij przycisk Zapisz.
Dodawanie zakresów do identyfikatora klienta
- W panelu po lewej stronie kliknij Dostęp do danych.
- Kliknij przycisk Dodaj lub usuń zakresy.
- W kolumnie API wyszukaj „Google Health API”. W tym samouczku używamy zakresu
.../auth/googlehealth.activity_and_fitness.readonly. - Po wybraniu zakresu kliknij przycisk Zaktualizuj, aby wrócić na stronę Dostęp do danych.
- Kliknij przycisk Zapisz.
Identyfikator klienta został skonfigurowany.
3. Dodawanie danych do aplikacji mobilnej Fitbit
Nowi użytkownicy Fitbita mogą nie mieć na swoim koncie Fitbit danych, o które można by zapytać. Ręcznie dodamy dziennik ćwiczeń, o który możemy zapytać za pomocą jednego z punktów końcowych. Aby ręcznie zarejestrować ćwiczenie:
- Otwórz na urządzeniu aplikację mobilną Fitbit. W razie potrzeby zaloguj się na swoje konto Fitbit.
- W prawym dolnym rogu ekranu kliknij przycisk +.
- W sekcji „Ręczne rejestrowanie” kliknij Aktywność.
- Wyszukaj rodzaj ćwiczenia Spacer i wybierz go.
- Wpisz czas rozpoczęcia na dziś.
- Zmień czas trwania na 15 minut.
- Pozostaw dystans 1,6 km.
- Kliknij Dodaj.
- Zsynchronizuj aplikację mobilną z serwerami Fitbit, naciskając i przytrzymując ekran, a następnie przesuwając palcem w dół. Gdy zwolnisz palec, powinna się rozpocząć synchronizacja aplikacji mobilnej.
- W sekcji "Aktywność" powinien się wyświetlić ręcznie zarejestrowany wpis Spacer.

4. Autoryzacja w OAuth 2.0 Playground
Otwórz OAuth 2.0 Playground.
Google Health API wymaga, aby w Playground używać własnych danych logowania OAuth.
- W prawym górnym rogu kliknij ikonę koła zębatego Konfiguracja OAuth 2.0.
- Kliknij Użyj własnych danych logowania OAuth.
- Wpisz Identyfikator klienta OAuth i Tajny klucz klienta OAuth uzyskane podczas konfigurowania projektu w chmurze Google.
Interfejs Playground jest podzielony na 3 główne kroki, które wykonamy:
- Wybieranie i autoryzowanie interfejsów API
- Wymiana kodu autoryzacji na tokeny
- Wysyłanie żądania do interfejsu API
Wybieranie i autoryzowanie interfejsów API
W tym miejscu wybierasz zakresy interfejsu API, o które chcesz poprosić.
- W kroku 1 na liście interfejsów API znajdź Google Health API v4 i rozwiń je.
- Kliknij
https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly. Jeśli potrzebny zakres nie jest widoczny na liście, możesz go wpisać ręcznie w polu „Wpisz własne zakresy”. - Kliknij Autoryzuj interfejsy API.
- Żądanie zostanie wysłane do punktu końcowego autoryzacji Google OAuth 2.0. Wybrane zakresy zostaną uwzględnione w żądaniu, a następnie nastąpi przekierowanie na ekran zgody konta Google.
- Zaloguj się na konto użytkownika testowego skonfigurowane w sekcji Konfigurowanie projektu Google Cloud (jeśli nie jesteś jeszcze zalogowany(-a)).
- Sprawdź wymagane uprawnienia i kliknij Dalej, aby przyznać dostęp.
Gdy wyrazisz zgodę, Google przekieruje Cię z powrotem do Playground i przekaże narzędziu kod autoryzacji, który zostanie użyty w następnym kroku.
W panelu Żądanie / Odpowiedź po prawej stronie wyświetla się pełny przepływ przekierowania HTTP.
Odpowiedź na początkowe żądanie autoryzacji to przekierowanie 302 Found:
HTTP/1.1 302 Found
Location: https://accounts.google.com/o/oauth2/v2/auth?redirect_uri=https%3A%2F%2Fdevelopers.google.com%2Foauthplayground&prompt=consent&response_type=code&client_id=your_client_id&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fgooglehealth.activity_and_fitness.readonly&access_type=offline
Wynikowe żądanie przekierowane z powrotem do Playground zawiera kod autoryzacji:
GET /oauthplayground/?iss=https://accounts.google.com&code=authorization_code&scope=https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly HTTP/1.1
Host: developers.google.com
Kod autoryzacji to wartość alfanumeryczna reprezentowana przez authorization_code między code= a &scope w adresie URL żądania GET. W tym przykładzie wartość jest podobna do: 4/0AbPOj...
Wymiana kodu autoryzacji na tokeny
W tym kroku kod jest wymieniany na tokeny, które umożliwiają wysyłanie żądań do interfejsu API.
Po wykonaniu czynności opisanych w sekcji Wybieranie i autoryzowanie interfejsów API Playground automatycznie wypełnia pole kodu autoryzacji. Aby wymienić go na tokeny:
- W kroku 2 kliknij przycisk Kod autoryzacji wymiany dla tokenów.
- W panelu Żądanie/Odpowiedź po prawej stronie pojawią się access_token i refresh_token.
Powinna się wyświetlić odpowiedź podobna do tej:
{
"access_token": "ya29.a0AFH6S....",
"refresh_token_expires_in": 604799,
"expires_in": 3599,
"token_type": "Bearer",
"scope": "https://www.googleapis.com/auth/googlehealth.activity_and_fitness.readonly",
"refresh_token": "1/og..."
}
Informacje o tokenach odświeżania
Gdy wymieniasz kod autoryzacji, odpowiedź może zawierać oprócz access_token także refresh_token. access_token mają krótki okres ważności (zwykle 1 godzina). Gdy access_token wygaśnie, musisz użyć refresh_token, aby uzyskać nowy access_token bez konieczności ponownego logowania się użytkownika lub wyrażania przez niego zgody. Jest to możliwe, ponieważ w żądaniu autoryzacji uwzględniliśmy access_type=offline.
Jeśli w odpowiedzi nie otrzymasz refresh_token, może to być spowodowane tym, że użytkownik wyraził już zgodę na tę aplikację i zakresy. Tokeny odświeżania są zwykle wydawane tylko wtedy, gdy użytkownik po raz pierwszy wyrazi zgodę na Twoją aplikację lub gdy do adresu URL autoryzacji zostanie dodany parametr prompt=consent, aby wymusić wyświetlenie ekranu zgody nawet w przypadku kolejnych autoryzacji.
refresh_token ma długi okres ważności, ale może wygasnąć lub stać się nieważny, jeśli nie będzie używany przez 6 miesięcy, jeśli użytkownik cofnie dostęp do Twojej aplikacji lub z innych powodów. Aby móc używać refresh_token w przyszłości, przechowuj go w bezpiecznym miejscu.
5. Wysyłanie żądania do interfejsu API
Teraz możesz używać tokena dostępu do wysyłania żądań do Google Health API. W kroku 3 w Playground skonfiguruj żądanie HTTP, podając identyfikator URI żądania, metodę HTTP, nagłówki i treść żądania.
- Ustaw Metodę HTTP na GET.
- Ustaw Identyfikator URI żądania na
https://health.googleapis.com/v4/users/me/dataTypes/exercise/dataPoints. - Kliknij Wyślij żądanie.
Odpowiedź powinna wyglądać podobnie do tej:
{
"dataPoints": [
{
"name": "users/2515055256096816351/dataTypes/exercise/dataPoints/8896720705097069096",
"dataSource": {
"recordingMethod": "MANUAL",
"platform": "FITBIT"
},
"exercise": {
"interval": {
"startTime": "2026-02-23T13:10:00Z",
"startUtcOffset": "-18000s",
"endTime": "2026-02-23T13:25:00Z",
"endUtcOffset": "-18000s"
},
"exerciseType": "WALKING",
"metricsSummary": {
"caloriesKcal": 16,
"distanceMillimiters": 1609344,
"steps": "2038",
"averagePaceSecondsPerMeter": 0.55923407301360051,
"activeZoneMinutes": "0"
},
"exerciseMetadata": {},
"displayName": "Walk",
"activeDuration": "900s",
"exerciseEvents": [
{
"eventTime": "2026-02-23T13:10:00Z",
"eventUtcOffset": "-18000s",
"exerciseEventType": "START"
},
{
"eventTime": "2026-02-23T13:25:00Z",
"eventUtcOffset": "-18000s",
"exerciseEventType": "STOP"
}
],
"updateTime": "2026-02-24T01:19:22.450466Z"
}
},
{
"name": "users/2515055256096816351/dataTypes/exercise/dataPoints/5870930690409355408",
"dataSource": {
"recordingMethod": "MANUAL",
"platform": "FITBIT"
},
"exercise": {
"interval": {
"startTime": "2026-02-23T06:00:00Z",
"startUtcOffset": "-18000s",
"endTime": "2026-02-23T06:15:00Z",
"endUtcOffset": "-18000s"
},
"exerciseType": "WALKING",
"metricsSummary": {
"caloriesKcal": 17,
"distanceMillimiters": 1609344,
"steps": "2038",
"averagePaceSecondsPerMeter": 0.55923407301360051,
"averageHeartRateBeatsPerMinute": "81",
"activeZoneMinutes": "0",
"heartRateZoneDurations": {
"lightTime": "900s"
}
},
"exerciseMetadata": {},
"displayName": "Walk",
"activeDuration": "900s",
"exerciseEvents": [
{
"eventTime": "2026-02-23T06:00:00Z",
"eventUtcOffset": "-18000s",
"exerciseEventType": "START"
},
{
"eventTime": "2026-02-23T06:15:00Z",
"eventUtcOffset": "-18000s",
"exerciseEventType": "STOP"
}
],
"updateTime": "2026-02-23T08:29:39.480437Z"
}
}
],
"nextPageToken": ""
}
Wiele punktów końcowych obsługuje parametry zapytania do filtrowania lub podziału na strony. Aby na przykład wyświetlić listę ćwiczeń w określonym przedziale czasu, zmień identyfikator URI żądania, aby uwzględnić parametr filtra:
https://health.googleapis.com/v4/users/me/dataTypes/exercise/dataPoints?filter=exercise.interval.civil_start_time >= "2026-02-22T00:00:00"
Aby zobaczyć przefiltrowane wyniki, ponownie kliknij Wyślij żądanie.
6. Gratulacje
Gratulacje!
Ukończono podstawowy samouczek i udało się nauczyć, jak używać OAuth2 Playground do testowania autoryzacji OAuth 2.0 i wywoływania punktów końcowych Google Health API.
Mamy nadzieję, że tworzenie aplikacji zintegrowanych z ekosystemem Google Health API będzie dla Ciebie przyjemne. Więcej informacji znajdziesz w dokumentacji referencyjnej, w której opisano inne punkty końcowe Google Health API, oraz w artykule o Google OAuth 2.0 w internetowych aplikacjach serwerowych.