Veri erişimi ve yetkilendirme

Google Health API, kullanıcı verilerine erişimi ve güvenliği yönetmek için güçlü ve standartlaştırılmış bir çerçeve kullanır. Bu modernizasyonun temel bileşenlerinden biri, eski Fitbit Yetkilendirme (FOT) sisteminden Google OAuth 2.0'a geçiş yapmaktır. Bu değişiklik, geliştiricilerin standart Google kimlik doğrulama kitaplıklarından yararlanmasına olanak tanıyarak uygulamayı basitleştirirken kullanıcılara izinlerini yönetmek için tanıdık ve merkezi bir arayüz sunar.

Uygulama Kaydı

Tüm Google Health API uygulamaları, tüm Google uygulamalarınızı yönetmek için merkezi bir hub görevi gören Google Cloud Console kullanılarak kaydedilmelidir.

Uygulamanızı kaydetme talimatları için Başlangıç bölümündeki adımları uygulayın. Uygulamalarınızı kaydederken fark edeceğiniz farklılıklar aşağıda verilmiştir.

Fitbit Web API Google Health API
Herkese açık bağlantılar https://dev.fitbit.com/apps https://console.cloud.google.com
Yeni uygulama ekleme Yeni uygulama kaydet'i tıklayın.
  1. Google Cloud projesi oluşturma
  2. Google Health API'yi etkinleştirin.
Temel Bilgiler Doldurulacak alanlar:
  • Uygulama adı
  • Açıklama
  • Uygulama Web Sitesi URL'si
  • Kurumsal
  • Kuruluşun web sitesi URL'si
  • Hizmet Şartları URL'si
  • Gizlilik Politikası URL'si
Doldurulacak alanlar:
  • Uygulama adı
  • Destek e-posta adresi
  • Kitle (dahili veya harici)
  • İletişim e-postası
  • Logo simgesi
  • Uygulama web sitesi URL'si
  • Gizlilik politikası URL'si
  • Hizmet Şartları URL'si
  • Yetkilendirilmiş alan
Uygulama Türleri Geliştiricinin seçmesi gerekenler:
  • Sunucu
  • Müşteri
  • Kişisel
  • Web uygulaması
  • Android
  • Chrome uzantısı
  • iOS
  • TV'ler
  • Masaüstü uygulaması
  • Evrensel Windows Platformu
Müşteri Kimliği Uygulama ayarları kaydedildiğinde kaydedilir. Ayrı ayrı kaydedilir
Erişim Türü Okuma ve yazma erişimi uygulama düzeyinde kontrol edilir. Okuma ve yazma erişimi kapsam düzeyinde kontrol edilir.
Ek URL'ler
  • Yönlendirme URL'si: Kullanıcıların kapsamları yetkilendirdikten sonra yönlendirildiği site
  • Yetkilendirilmiş JavaScript Kaynakları: Web uygulamasını barındıran HTTP kaynağı
  • Yönlendirme URL'si: Kullanıcıların kapsamları yetkilendirdikten sonra yönlendirildiği site

OAuth Uygulaması

Google Health API uygulamaları yalnızca Google OAuth2 istemci kitaplıklarını destekler. Popüler çerçeveler için istemci kitaplıkları mevcuttur. Bu sayede OAuth 2.0'ı uygulamak daha kolaydır. Google OAuth2 kitaplıkları ile açık kaynak OAuth2 kitaplıkları arasındaki farklar şunlardır:

Fitbit Web API Google Health API
OAuth2 kitaplığı desteği Açık Kaynak Google OAuth2 istemci kitaplıkları
İşlevsellik Platformlar arasında tutarsızlık Platformlar arasında tutarlılık
Yetkilendirme URL'si https://www.fitbit.com/oauth2/authorize https://accounts.google.com/o/oauth2/v2/auth
Jeton URL'si https://api.fitbit.com/oauth2/token https://oauth2.googleapis.com/token
Erişim Jetonu Ömrü 8 saat 1 saat
Erişim Jetonu Boyutu 1.024 bayt 2.048 bayt
Yenileme Jetonu Yenileme jetonları, yetkilendirme kodu verme akışı kullanılırken oluşturulur. Bir kullanıcı için yalnızca 1 yenileme jetonu oluşturulabilir. Jetonların geçerlilik süresi yoktur ve yalnızca bir kez kullanılabilir. Yenileme jetonu oluşturmak için yetkilendirme dizesi "access_type=offline" sorgu parametresini içermelidir. Tek bir kullanıcı için birden çok yenileme jetonu oluşturulabilir. Yenileme jetonları zamana dayalı olabilir. Bu jetonlar 6 ay içinde kullanılmazsa, kullanıcı zamana dayalı erişim izni verirse veya uygulama "Test" modundaysa süresi dolar. Daha fazla bilgi için Yenileme jetonu geçerlilik süresi bölümüne bakın.
Jeton Yanıtı JSON yanıtı şunları içerir:
  • erişim jetonu
  • erişim jetonunun süresinin dolması
  • kapsamlar
  • jeton türü
  • yenileme jetonu
  • kullanıcı kimliği
JSON yanıtı şunları içerir:
  • erişim jetonu
  • erişim jetonunun süresinin dolması
  • kapsamlar
  • jeton türü
  • yenileme jetonu

Kullanıcı kimliğini almak için users.getIdentity uç noktasını kullanın.

Uygulamanız farklı bir OAuth kitaplığı kullandığından Fitbit kullanıcılarının yeni entegrasyonunuz için yeniden izin vermesi gerekir. Erişim jetonlarının ve yenileme jetonlarının Google Health API'ye aktarılması ve çalışması mümkün değildir.