问题排查

本指南介绍了如何排查使用 Google Health API 时遇到的常见问题。

4xx 客户端错误

如果客户端应用代码存在问题,则返回 4xx 状态代码。查看响应正文元素,详细了解问题。

400 无效请求

消息 说明 建议
请求中包含无效的参数。 不支持数据类型 ID {value}。 验证所引用的数据类型是否受端点支持。
收到的 JSON 载荷无效。八进制/十六进制数不是有效的 JSON 值。 dailyRollUp 端点不支持分别以 MM 或 DD 表示的月份和日期值。个位数不应有前导 0(零)。
资源名称中的项目编号无效 在请求网址中使用 Google Cloud 项目 ID 而不是项目编号来删除或更新订阅方时。这适用于使用 projects.subscribers 端点的 Webhook 订阅。 在请求网址中使用您的 Google Cloud 项目编号,而不是项目 ID。

401 未经授权

消息 说明 建议
请求所带的身份验证凭据无效。应提供 OAuth 2 访问令牌、登录 Cookie 或其他有效的身份验证凭据。 INVALID_AUTHENTICATOR:令牌已过期 您的访问令牌已过期。使用刷新令牌获取新的访问令牌和刷新令牌,或者用户应重新向应用授予同意权限。

403 禁止访问

消息 说明 建议
调用方无权限 在请求网址中使用 Google Cloud 项目 ID 而不是项目编号来创建或列出订阅方时。这适用于使用 projects.subscribers 端点的 Webhook 订阅。 在请求网址中使用您的 Google Cloud 项目编号,而不是项目 ID。
调用方无权限。 无法从 GaiaMint 铸造 UberMint。

用户能够完成授权流程,但端点调用失败。如果旧版 Fitbit 账号同意应用访问数据,而不是 Google 账号同意,则可能会出现这种情况。如需纠正此错误,请执行以下操作:

  1. 通过 Fitbit 设置退出 Fitbit 移动应用。
  2. 按“使用 Google 账号继续”或“使用 Google 账号登录”按钮,登录 Fitbit 移动应用。如果你收到一条消息,指出“无法将 Fitbit 与此 Google 账号搭配使用”,则表示你的电子邮件地址仍注册为旧版 Fitbit 账号。请按照这篇帮助文章中的步骤迁移您的账号。

404 未找到

消息 说明 建议
在此服务器上找不到请求的网址 /v4/users/me/dataTypes/{dataType}/dataPoints 可能的原因:
  • 验证是否使用了正确的动词
  • 检查端点语法是否存在拼写错误

检索 Fitbit 用户 ID

为了帮助排查用户问题,您可能需要验证用户登录 Fitbit 移动应用时所用的 Google 账号。

如需查找 Fitbit 用户 ID,请执行以下操作:

  1. 打开 Fitbit 移动应用。
  2. 按右下角的图标。
  3. 按顶部包含用户名称和加入日期的功能块中的修改个人资料链接。
  4. 转到页面底部。在您的账号部分中,分配给 ID 的值就是 Fitbit 用户 ID。(例如:CV5TKH)

在帮助用户排查其与您的应用的 OAuth2 连接问题时,您可能需要他们取消账号与您的应用的关联,然后再次完成您的授权流程。

如需解除其 Google 账号与您的应用的关联,请执行以下操作:

  1. 打开 Fitbit 移动应用。
  2. 按右上角的 Fitbit 用户个人资料图标。
  3. 管理您的 Google 账号
  4. 选择数据和隐私设置功能块。
  5. 向下滚动到“您使用的应用和服务中的数据”部分。 在应用和服务下,选择第三方应用和服务
  6. 在关联的应用列表中查找您的应用名称,然后让用户选择该应用。
  7. 撤消您与 <应用名称> 之间的所有关联
  8. 让用户按“确认”按钮撤消对您应用的同意。

撤消流程完成后,系统会将用户带回第三方应用和服务页面。用户可能需要刷新页面才能看到应用名称已从列表中移除。