本教學課程說明如何啟用 Fitness REST API 存取權並取得 OAuth 存取權 權杖,並透過 HTTP 要求叫用 API 方法。
如要使用 Fitness REST API,請務必瞭解 符合 REST 樣式的網路服務 和 JSON 表示法。
申請 Google 帳戶
您必須擁有 Google 帳戶,才能使用 Fitness REST API。 如果您已經有帳戶,則已準備就緒。你也可能需要完成 建立測試用的個別 Google 帳戶。
要求 OAuth 2.0 用戶端 ID
請按照下列步驟申請 Fitness API 的 OAuth 2.0 用戶端 ID。
- 前往 Google API 控制台。
- 選取專案,或建立新專案。使用同一個專案存取 Android 和 REST 版本
- 點選「繼續」以啟用 Fitness API。
- 按一下「前往憑證」。
- 按一下「New credentials」,然後選取「OAuth Client ID」。
- 在「Application type」(應用程式類型) 下方,選取 [Web application] (網頁應用程式)。
- 在「授權的 JavaScript 來源」下方輸入網站的基準網址
要求的來源 (例如
https://developers.google.com
是 OAuth Playground 使用的網址)。 - 在「授權的重新導向 URI」下方,輸入回應的網站網址
將由 Google 處理 (例如
https://developers.google.com/oauthplayground
是 OAuth Playground 使用的網址)。 點選「建立」。清單中會顯示新的 OAuth 2.0 用戶端 ID 和密鑰 設定專案 IDOAuth 2.0 用戶端 ID 是由一串字元組成的字串 如下所示:
780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com
在 OAuth Playground 中試用 REST API
要瞭解 提交 HTTP 要求並觀察回應內容, 完全不必撰寫用戶端程式碼
如何在 OAuth Playground 中授權 Fitness REST API:
- 前往 OAuth Playground。
- 在「步驟 1 選取與」授權 API、展開健身 v1,然後選取 要使用的健身範圍
- 按一下「Authorize APIs」(授權 API) 按鈕,選取要授予的 Google API 控制台專案 ,並在系統提示時按一下「允許」。你將可存取 修改與所選 Google API 控制台帳戶相關聯的資料。
- 請按一下「Exchange License code for token」按鈕。OAuth
Playground 會自動在
Authorization:
中加入此標頭 要求標頭。請注意,存取權杖時 的有效期限為 60 分鐘 (3600 秒)。
提交 HTTP 要求
以下範例說明如何傳送 HTTP 要求,以列出所有清單 以及建立新的資料來源適合健身 REST 的 API,則 URI 格式為:
https://www.googleapis.com/fitness/v1/resourcePath?parameters
如要列出所有可用資料來源:
- 在「HTTP Method」中,選取「GET」。
- 在「Request URI」中,輸入
https://www.googleapis.com/fitness/v1/users/me/dataSources
。 - 按一下「傳送要求」。
要求和回應會顯示在頁面右側。如果 要求成功後,回應會顯示上一個 使用 JSON 格式的範例
如何建立資料來源:
- 在「HTTP Method」中選取「POST」。
- 在「Request URI」中,輸入
https://www.googleapis.com/fitness/v1/users/me/dataSources
。 - 按一下「輸入要求主體」。
在「Request Body」視窗中,複製並貼上下列 JSON:
{ "dataStreamName": "MyDataSource", "type": "derived", "application": { "detailsUrl": "http://example.com", "name": "Foo Example App", "version": "1" }, "dataType": { "field": [ { "name": "steps", "format": "integer" } ], "name": "com.google.step_count.delta" }, "device": { "manufacturer": "Example Manufacturer", "model": "ExampleTablet", "type": "tablet", "uid": "1000001", "version": "1" } }
在「Request Body」視窗中,按一下「Close」。
按一下「傳送要求」。
要求和回應會顯示在頁面右側。要求
OAuth 存取權杖包含在 Authorization
標頭中:
Authorization: Bearer ya29.OAuthTokenValue
如果要求成功,回應的第一行為:
HTTP/1.1 200 OK
使用 cURL 存取 Fit REST API
您可以使用 cURL 指令列工具存取 Fit REST API。您必須具備 OAuth 存取權杖才能提出要求 使用 cURL (請參閱上方的操作說明)。 請注意,存取權杖會在一小時後失效。以下範例顯示 簡單的 bash 指令碼,列出所有資料來源。
#!/bin/bash ACCESS_TOKEN="" curl \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $ACCESS_TOKEN" \ https://www.googleapis.com/fitness/v1/users/me/dataSources
後續步驟
如要進一步瞭解 REST API,請參閱下列頁面: