REST API 使用入门

本教程介绍了如何激活对 Fitness REST API 的访问权限、获取 OAuth 访问令牌以及使用 HTTP 请求调用 API 方法。

如需使用 Fitness REST API,您必须了解 RESTful 网络服务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. 点击新建凭据,然后选择 OAuth 客户端 ID
  6. 应用类型下,选择网页应用
  7. 已获授权的 JavaScript 来源下,输入发起请求的网站的基准网址(例如,https://developers.google.com 是 OAuth Playground 使用的网址)。
  8. 已获授权的重定向 URI 下,输入将处理响应的网站的网址(例如,https://developers.google.com/oauthplayground 是 OAuth Playground 使用的网址)。
  9. 点击创建。您的新 OAuth 2.0 客户端 ID 和密钥会显示在项目的 ID 列表中。OAuth 2.0 客户端 ID 是如下所示的字符串:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com

在 OAuth Playground 中试用 REST API

若要熟悉 Fitness REST API,OAuth 园地是最简单的方法:提交 HTTP 请求并观察响应,然后再编写客户端代码。

如需在 OAuth Playground 中向 Fitness REST API 授权,请执行以下操作:

  1. 前往 OAuth Playground
  2. 第 1 步选择和授权 API 下,展开 Fitness v1,然后选择要使用的健身范围。
  3. 点击授权 API 按钮,选择要使用的 Google API 控制台项目,并在出现提示时点击允许。您将能够访问和修改与所选 Google API 控制台帐号相关联的数据。
  4. 点击交换令牌的授权代码按钮。当您提交 HTTP 请求时,OAuth Playground 会自动将此标头包含在 Authorization: 请求标头中。请注意,访问令牌将在 60 分钟(3600 秒)后过期。

提交 HTTP 请求

以下示例演示了如何发送 HTTP 请求以列出所有可用数据源,以及如何创建新的数据源。对于 Fitness REST API,URI 格式为:

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

如需列出所有可用数据源,请执行以下操作

  1. HTTP Method(HTTP 方法)中,选择 GET
  2. 请求 URI 中,输入 https://www.googleapis.com/fitness/v1/users/me/dataSources
  3. 点击 Send the request

请求和响应显示在页面右侧。如果请求成功,响应会以 JSON 格式显示上一个示例中的数据源。

如需创建数据源,请按以下步骤操作

  1. HTTP 方法中,选择 POST
  2. 请求 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. 点击 Send the request

请求和响应显示在页面右侧。该请求的 Authorization 标头中包含 OAuth 访问令牌:

Authorization: Bearer ya29.OAuthTokenValue

如果请求成功,则响应的第一行如下:

HTTP/1.1 200 OK

使用 c网址 访问 Fit REST API

您可以使用 cURL 命令行工具访问 Fit REST API。您需要 OAuth 访问令牌才能使用 c网址 发出请求(请参阅上述instructions)。请注意,访问令牌将在一小时后过期。以下示例展示了一个用于列出所有数据源的简单 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,请参阅以下页面: