開始使用 REST API

本教學課程說明如何啟用 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。

  1. 前往 Google API 控制台
  2. 選取專案,或建立新專案。使用同一個專案存取 Android 和 REST 版本
  3. 點選「繼續」以啟用 Fitness API。
  4. 按一下「前往憑證」
  5. 按一下「New credentials」,然後選取「OAuth Client ID」
  6. 在「Application type」(應用程式類型) 下方,選取 [Web application] (網頁應用程式)
  7. 在「授權的 JavaScript 來源」下方輸入網站的基準網址 要求的來源 (例如 https://developers.google.com 是 OAuth Playground 使用的網址)。
  8. 在「授權的重新導向 URI」下方,輸入回應的網站網址 將由 Google 處理 (例如 https://developers.google.com/oauthplayground 是 OAuth Playground 使用的網址)。
  9. 點選「建立」。清單中會顯示新的 OAuth 2.0 用戶端 ID 和密鑰 設定專案 IDOAuth 2.0 用戶端 ID 是由一串字元組成的字串 如下所示:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com

在 OAuth Playground 中試用 REST API

要瞭解 提交 HTTP 要求並觀察回應內容, 完全不必撰寫用戶端程式碼

如何在 OAuth Playground 中授權 Fitness REST API:

  1. 前往 OAuth Playground
  2. 在「步驟 1 選取與」授權 API、展開健身 v1,然後選取 要使用的健身範圍
  3. 按一下「Authorize APIs」(授權 API) 按鈕,選取要授予的 Google API 控制台專案 ,並在系統提示時按一下「允許」。你將可存取 修改與所選 Google API 控制台帳戶相關聯的資料。
  4. 請按一下「Exchange License code for token」按鈕。OAuth Playground 會自動在 Authorization: 中加入此標頭 要求標頭。請注意,存取權杖時 的有效期限為 60 分鐘 (3600 秒)。

提交 HTTP 要求

以下範例說明如何傳送 HTTP 要求,以列出所有清單 以及建立新的資料來源適合健身 REST 的 API,則 URI 格式為:

https://www.googleapis.com/fitness/v1/resourcePath?parameters

如要列出所有可用資料來源:

  1. 在「HTTP Method」中,選取「GET」
  2. 在「Request URI」中,輸入 https://www.googleapis.com/fitness/v1/users/me/dataSources
  3. 按一下「傳送要求」

要求和回應會顯示在頁面右側。如果 要求成功後,回應會顯示上一個 使用 JSON 格式的範例

如何建立資料來源:

  1. 在「HTTP Method」中選取「POST」
  2. 在「Request URI」中,輸入 https://www.googleapis.com/fitness/v1/users/me/dataSources
  3. 按一下「輸入要求主體」
  4. 在「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"
      }
    }
    
  5. 在「Request Body」視窗中,按一下「Close」

  6. 按一下「傳送要求」

要求和回應會顯示在頁面右側。要求 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,請參閱下列頁面: