Google Cloud ve OAuth'u ayarlama

Google Health API'ye erişim Google Cloud üzerinden sağlanır. API'yi etkinleştirmek ve bir Google Hesabı'nı yetkilendirmek için Google Cloud projesi gerekir.

İster mevcut bir Fitbit API geliştiricisi olun ister Google Health API'yi yeni kullanmaya başlayın, API'ye çağrı göndermek için bu adımı tamamlamanız gerekir.

Proje ve OAuth istemcisi oluşturma

Google Health API'yi etkinleştirmek ve OAuth 2.0 istemci kimliği almak için API'yi etkinleştirin ve OAuth 2.0 istemci kimliği alın düğmesini kullanın:

  1. Google Health API için kullanmak istediğiniz mevcut bir Google Cloud projeniz varsa önce bu projenin yönetici hesabına giriş yaptığınızdan emin olun. Ardından, düğmeyi tıkladıktan sonra mevcut projeyi kullanılabilir projeler listesinden seçin. Aksi takdirde yeni bir proje oluşturun.
  2. "Nereden arıyorsunuz?" sorulduğunda Web Sunucusu'nu seçin.
  3. Yetkili yönlendirme URI'leri için değer olarak https://www.google.com adresini girin. OAuth 2.0 kullanarak yetkilendirme kodu almak için yönlendirme URI'si gerekir.
  4. Kurulum tamamlandıktan sonra OAuth 2.0 istemci kimliği ve istemci gizli anahtarı değerlerini kopyalayın ve kimlik bilgileri JSON'ını yerel makinenize indirin.
API'yi etkinleştirme ve OAuth 2.0 istemci kimliği edinme

Google Cloud projenizi manuel olarak ayarlamak veya kurulumu doğrulayıp kimlik bilgilerinizi tekrar almak istiyorsanız:

  1. API Etkinleştirme sayfasında Google Health API'yi etkinleştirin.
  2. Kimlik Bilgileri sayfasında OAuth 2.0 istemci kimliği edinin.

Google Konsolu'nu kullanarak OAuth 2.0'ı ayarlama hakkında daha fazla bilgi için Google API'lerine Erişmek İçin OAuth 2.0'ı Kullanma başlıklı makaleyi inceleyin.

Test kullanıcıları ekleme

Yeni oluşturulan OAuth istemcileri varsayılan olarak doğrulanmamış durumdadır ve hem test hem de üretim amaçlı olarak 100 kullanıcı sınırı vardır. Bu süre zarfında yetkilendirmeyi etkinleştirmek için her kullanıcının e-posta adresini proje yapılandırmanızdaki Test kullanıcıları listesine manuel olarak eklemeniz gerekir.

Kitle sayfasındaki test kullanıcıları listesini güncelleyin:

  1. Bu sayfada, "Yayınlama durumu"nun Test, "Kullanıcı türü"nün ise Harici olarak ayarlandığını görmeniz gerekir.
  2. "Test kullanıcıları" bölümünde + Kullanıcı ekle'yi tıklayın. Uygulamanızın sağlık verilerine erişmesine izin vermesi gereken tüm test kullanıcılarının e-posta adresini girin.
  3. Kaydet'i tıklayın.

Google Health API ile 100'den fazla kullanıcıyı desteklemek için üçüncü taraf güvenlik incelemesinin tamamlanması gerekir. Daha fazla bilgiyi OAuth Uygulaması Doğrulama Yardım Merkezi'nde bulabilirsiniz.

Kapsam ekleme

İstemcinizin Veri Erişimi sayfasında hangi kapsamları çağırmasına izin verildiğini belirtmeniz gerekir:

  1. Bu sayfada Kapsam ekle veya kaldır'ı tıklayın.
  2. API sütununda "Google Health API"yi arayın. Uygulamanız için gereken kapsamları seçin.
  3. İhtiyacınız olan tüm kapsamları seçtikten sonra Güncelle'yi tıklayarak Veri Erişimi sayfasına dönün.
  4. Kaydet'i tıklayın.

İstemci kimliğinizi ayarlamayı tamamladınız ve artık Google Health API'ye çağrı yapabilirsiniz.

OAuth2 istemci kitaplıkları

Popüler çerçevelerle entegrasyon için kullanılan mevcut OAuth2 istemci kitaplıklarının listesini Google API'lerine Erişmek için OAuth 2.0'ı Kullanma bölümünde bulabilirsiniz.

Yenileme jetonları

Google API'lerine sürekli kullanıcı yeniden kimlik doğrulaması gerektirmeden uzun süreli erişim sağlamak için uygulamanızın yenileme jetonu kullanması gerekir. Gerekli HTTP istekleri ve parametreler de dahil olmak üzere kapsamlı uygulama ayrıntıları için Google Identity Platform dokümanlarına bakın.

Yenileme jetonunu erişim jetonuyla değiştirmek için Google OAuth 2.0 jeton uç noktasına bir HTTPS POST çağrısı yapın. Aşağıdaki snippet'te örnek bir istek ve yanıt gösterilmektedir:

İstek

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'

Yanıt

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

Test sırasında jeton davranışı

Yenileme jetonlarının, Google Cloud projenizin yayınlanma durumuna bağlı olarak nasıl davrandığını bilin:

  • Test Modu: OAuth kullanıcı rızası ekranınız "Test" yayınlama durumuyla yapılandırılmışsa verilen yenileme jetonları zamana bağlıdır ve 7 gün sonra sona erer. Bu süre zarfında, geçerlilik bitiş tarihine ulaşana kadar yeni erişim jetonları almak için geçerli ve kullanılabilir olan tek bir yenileme jetonu alırsınız.
  • Yayınlanmış Mod: Uygulamanız "Üretim Aşamasında" durumuna taşındıktan sonra, yenileme jetonları genellikle iptal edilmedikleri veya uzun süre (genellikle altı ay) kullanılmadıkları sürece geçerliliklerini yitirmez.

Sorunsuz bir kullanıcı deneyimi için, 7 günlük jeton geçerlilik süresinin dolmasını önlemek amacıyla uygulamanızı üretim ortamına taşımadan önce yayınladığınızdan emin olun.