首页 > 解决方案 > Google 日历 API 错误 - “API 密钥无效。请传递有效的 API 密钥。”,

问题描述

从昨天开始,我开始从 google rest api 收到错误

{
  "error": {
    "code": 400,
    "message": "API key not valid. Please pass a valid API key.",
    "errors": [
      {
        "message": "API key not valid. Please pass a valid API key.",
        "domain": "global",
        "reason": "badRequest"
      }
    ],
    "status": "INVALID_ARGUMENT"
  }
}

API端点是: https ://www.googleapis.com/calendar/v3/calendars/[CALENDAR_ID]/events?timeMax=2020-06-22T23%3A59%3A59.000%2B06%3A00&timeMin=2020-06-22T00% 3A00%3A00.000%2B06%3A00&key=[SECRET_KEY]

标题是:

"Content-length"    "0"
"Content-Type"  "application/x-www-form-urlencoded"
"Host"  "www.googleapis.com"
"Authorization" "Bearer [APPILCATION_ID]"
"Accept"    "application/json"

我在开发者控制台中有 oAuth 2.0 客户端 ID。并发送与 3 个月前相同的请求 可能出了什么问题?

标签: oauthgoogle-apigoogle-calendar-apigoogle-oauth

解决方案


API 密钥无效。请传递有效的 API 密钥。

表示您使用的 api 密钥无效。

谷歌开发者控制台选择你的项目。

单击左侧菜单中的凭据

单击顶部的 + 创建凭据并选择 API 密钥。

在此处输入图像描述

不记名令牌

"授权" "承载 [APPILCATION_ID]"

请注意,发送的不记名令牌应该是有效的未过期访问令牌。不是应用程序 ID。

笔记

Api 密钥用于访问所有假期日历等公共数据,如果您希望能够从中请求数据,请确保您尝试访问的日历 ID 设置为公共。

如果这是用户日历,您将需要切换到使用 Oauth2 并请求他们授予您访问其数据的权限。

如果这是您自己的日历并且您希望允许其他人查看数据,那么您应该考虑使用服务帐户。


推荐阅读