Halaman ini menyediakan link ke cara mudah untuk mengakses Google Health API.
Library klien Google Health API
Google Health API dibuat berdasarkan HTTP dan JSON, sehingga semua klien HTTP standar dapat mengirim permintaan ke API ini dan mengurai responsnya.
Namun, daripada membuat permintaan HTTP dan mengurai respons secara manual, Anda dapat menggunakan library klien Google API. Library klien menyediakan integrasi bahasa yang lebih baik, keamanan yang ditingkatkan, dan dukungan untuk melakukan panggilan yang memerlukan otorisasi pengguna.
Go
Dapatkan library klien Google Health API terbaru untuk Go. Baca panduan developer library klien.
Java
Halaman ini berisi informasi tentang cara memulai Google Health API menggunakan Library Klien Google API untuk Java. Untuk informasi selengkapnya, lihat dokumentasi berikut:
Menambahkan library klien ke project
Pilih lingkungan build (Maven atau Gradle) dari tab berikut:
Tambahkan baris berikut ke file pom.xml Anda:
Lihat semua versi yang tersedia di Maven Central Repository.
Tambahkan baris berikut ke file build.gradle Anda:
Lihat semua versi yang tersedia di Maven Central Repository.
JavaScript
Baca panduan developer untuk library klien ini.
.NET
Halaman ini berisi informasi tentang cara memulai Google Health API menggunakan Library Klien Google API untuk .NET. Untuk informasi selengkapnya, lihat dokumentasi berikut:
Mendownload library
Instal paket NuGet: Google.Apis.
Node.js
Dapatkan library klien Google Health API terbaru untuk Node.js. Baca panduan developer terkait library klien.
Obj-C
Dapatkan library klien Google Health API terbaru untuk Objective-C. Baca panduan developer terkait library klien.
PHP
Dapatkan library klien Google Health API terbaru untuk PHP. Baca panduan developer terkait library klien.
Python
Halaman ini berisi informasi tentang cara memulai Google Health API menggunakan Library Klien Google API untuk Python (v1/v2). Untuk informasi selengkapnya, lihat dokumentasi berikut:
Persyaratan sistem
- Sistem operasi:
- Linux
- macOS X
- Windows
- Library klien v1 memerlukan Python 2.7 atau yang lebih tinggi. Library klien v2 memerlukan versi 3.7 atau yang lebih tinggi.
Menginstal library klien
Anda dapat menggunakan pengelola paket atau mendownload dan menginstal library klien Python secara manual:
Penginstalan terkelola
Gunakan pip atau setuptools untuk mengelola penginstalan. Anda mungkin
perlu menjalankan sudo terlebih dahulu.
- pip (lebih disarankan):
pip install --upgrade google-api-python-client
- Setuptools:
easy_install --upgrade google-api-python-client
Penginstalan manual
- Download library klien terbaru untuk Python.
- Ekstrak kodenya.
- Instal:
python setup.py install
App Engine
Karena library klien Python tidak diinstal di lingkungan runtime App Engine Python, Anda harus menyalinnya ke aplikasi sama seperti library pihak ketiga.
Ruby
Halaman ini berisi informasi tentang cara memulai Google Health API menggunakan Library Klien Google API untuk Ruby. Untuk informasi selengkapnya, lihat dokumentasi berikut:
Menginstal gem google-api-client
Bergantung pada sistemnya, Anda mungkin perlu mengawali perintah tersebut dengan sudo.
Jika Anda belum pernah menginstal Library Klien Google API untuk Ruby, instal menggunakan RubyGems:
gem install google-api-client
Jika Anda sudah pernah menginstal gem ini, update ke versi terbaru:
gem update -y google-api-client
Memulai Library Klien Google API untuk Ruby
Untuk mempelajari cara membuat permintaan pertama Anda, lihat Panduan memulai.
gRPC
Google Health API juga mendukung gRPC untuk pengambilan data berperforma tinggi. Selain menginstal library klien, penggunaan gRPC memerlukan perolehan definisi Protocol Buffers API dan pembuatan kode stub sisi klien sebelum membuat permintaan.
- Instal library gRPC:
- Gunakan
pip install grpcio grpcio-tools google-auth-oauthlibuntuk menginstal dependensi.
- Gunakan
- Buat kode klien:
- Dapatkan definisi
.protoGoogle Health API (misalnya,data_points.proto). - Jalankan
python -m grpc_tools.protoc -I. --python_out=. --grpc_python_out=. path/to/your/data_points.protountuk membuat kode stub.
- Dapatkan definisi
- Terapkan OAuth 2.0 dan buat permintaan gRPC:
- Gunakan
google-auth-oauthlibuntuk otorisasi dan stub klien yang dihasilkan untuk membuat permintaan gRPC, seperti yang ditunjukkan dalam contoh berikut.
- Gunakan
import google.auth
from google.auth.transport.grpc import secure_authorized_channel
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
import os
import json
import grpc
# Generated gRPC code from data_points.proto
# These imports depend on the output of grpc_tools
try:
import data_points_pb2
import data_points_pb2_grpc
except ImportError:
print("Please generate gRPC code from data_points.proto")
data_points_pb2 = None
data_points_pb2_grpc = None
# --- REPLACE WITH YOUR VALUES ---
CLIENT_SECRETS_FILE = 'path/to/your/client_secret.json'
SCOPES = ['https://www.googleapis.com/auth/health'] # Add other scopes as needed
TOKEN_FILE = 'token.json'
GRPC_ENDPOINT = 'health.googleapis.com' # Google Health API gRPC endpoint
def get_credentials():
"""Gets or creates OAuth 2.0 credentials."""
creds = None
# The file token.json stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists(TOKEN_FILE):
with open(TOKEN_FILE, 'r') as token:
creds = Credentials.from_authorized_user_info(json.load(token), SCOPES)
# If there are no (valid) credentials available, let the user log in.
if creds and creds.expired and creds.refresh_token:
try:
creds.refresh(Request())
except Exception as e:
creds = None # Force re-auth if refresh fails
if not creds or not creds.valid:
flow = InstalledAppFlow.from_client_secrets_file(
CLIENT_SECRETS_FILE, SCOPES
)
creds = flow.run_local_server(port=0)
# Save the credentials for the next run
with open(TOKEN_FILE, 'w') as token:
token.write(creds.to_json())
return creds
def fetch_health_data_grpc(creds):
"""Fetches health data using gRPC."""
if not data_points_pb2_grpc:
return
try:
# Create an authenticated gRPC channel
channel = secure_authorized_channel(creds, Request(), f'{GRPC_ENDPOINT}:443')
# Create a stub for the DataPointsService
stub = data_points_pb2_grpc.DataPointsServiceStub(channel)
# Example: list steps data points for the authenticated user 'me'
request = data_points_pb2.ListDataPointsRequest(parent='users/me/dataTypes/steps')
response = stub.ListDataPoints(request)
print('Health data via gRPC:', response)
except grpc.RpcError as e:
print(f'Error fetching data via gRPC: {e.code()} - {e.details()}')
except Exception as e:
print(f'An error occurred during gRPC call: {e}')
if __name__ == '__main__':
try:
creds = get_credentials()
print("Fetching data using gRPC...")
fetch_health_data_grpc(creds)
except Exception as e:
print(f"An error occurred: {e}")
- Mengimpor Library:
grpc: Library gRPC Python.google.auth.transport.grpc: Untuk membuat channel yang aman dan diautentikasi.data_points_pb2,data_points_pb2_grpc: Kode klien yang dibuat dari file.proto.
- Konfigurasi:
CLIENT_SECRETS_FILE: Jalur ke fileclient_secret.jsonAnda.SCOPES: Izin yang diperlukan.TOKEN_FILE: Jalur untuk menyimpan token OAuth.GRPC_ENDPOINT: Nama host untuk layanan gRPC Google Health.
get_credentials():- Memuat rahasia klien dari file, menggunakan
InstalledAppFlowdarigoogle-auth-oauthlibuntuk mengelola otorisasi, mencoba memuat kredensial yang disimpan, atau memulai alur OAuth 2.0 jika diperlukan.
- Memuat rahasia klien dari file, menggunakan
fetch_health_data_grpc():- Membuat saluran gRPC yang aman dan diautentikasi menggunakan kredensial pengguna.
- Menginisialisasi
DataPointsServiceStubdengan channel. - Membuat
ListDataPointsRequestuntuk meminta data langkah untukusers/me. - Memanggil metode RPC
ListDataPointsdan mencetak respons.
- Penanganan Error: Kode ini mencakup blok
try...exceptdasar untuk menangani gRPC dan error lainnya.