REST API 使用入门

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

要使用 Fitness REST API,您必须了解 RESTful Web 服务JSON 表示法

获取 Google 账号

如要使用 Fitness REST API,您需要拥有一个 Google 账号。 如果您已有账号,那么就大功告成了。您可能还需要 创建一个单独的 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 园地使用的网址)。
  8. 已获授权的重定向 URI 下,输入响应所在网站的网址 系统将会处理(例如 https://developers.google.com/oauthplayground) 是 OAuth 园地使用的网址)。
  9. 点击创建。您的新 OAuth 2.0 客户端 ID 和密钥会显示在列表中 多个项目 IDOAuth 2.0 客户端 ID 是一串字符 如下所示:

    780816631155-gbvyo1o7r2pn95qc4ei9d61io4uh48hl.apps.googleusercontent.com

在 OAuth 园地中试用 REST API

要熟悉 OAuth 园地,最简单的方法就是使用 Fitness REST API,提交 HTTP 请求并观察响应, 您可以编写任何客户端代码。

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

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

提交 HTTP 请求

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

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

列出所有可用数据源

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

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

如需创建数据源,请执行以下操作

  1. HTTP Method 中,选择 POST
  2. 请求 URI 中,输入 https://www.googleapis.com/fitness/v1/users/me/dataSources
  3. 点击 Enter request body(输入请求正文)。
  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网址(请参阅上述说明)。 请注意,访问令牌会在一小时后过期。以下示例展示了 简单的 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,请参阅以下页面: