【问题标题】:Google Calendar API error - "API key not valid. Please pass a valid API key.",Google Calendar API 错误 - “API 密钥无效。请传递有效的 API 密钥。”,
【发布时间】:2020-10-13 02:17:33
【问题描述】:

我从昨天开始从 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 个月前相同的请求 可能有什么问题?

【问题讨论】:

    标签: oauth google-api google-calendar-api google-oauth


    【解决方案1】:

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

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

    转到Google developers console 选择您的项目。

    点击左侧菜单中的凭据

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

    不记名令牌

    “授权”“承载 [APPILCATION_ID]”

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

    注意

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

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

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

    【讨论】:

    • 我的错。我提供了错误的信息!而不是“[APPILCATION_ID]”,我使用 [TOKEN],这是我在使用 oAuth2 的上一步授权中获得的。我每次都要求用户允许访问他的日历。而且我确实在控制台中有一个 oAuth 客户端 ID。该应用程序每天工作了 3 个月,每个工作日有 5-10 个查询的小负载。 google 日历 API 服务似乎最近发生了变化
    • 如果您使用 oauth2 为什么还要发送 api 密钥?
    • 你是对的!一旦我从端点中删除“&key = [SECRET_KEY]”以进行查询,一切都开始正常工作。谢谢!
    猜你喜欢
    • 2019-04-30
    • 1970-01-01
    • 2020-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多