通过POST请求进行谷歌日历api认证

问题描述 投票:0回答:1

我正试图向google日历api发出POST请求,但我不明白如何验证它。

我采取了以下步骤,尝试使用服务账户来做。

  1. 我已经在谷歌云控制台启用了日历api功能
  2. 我创建了一个新的服务账户,启用了 G套件全域授权并下载了提供的密钥。
  3. 我已经将服务帐户的电子邮件添加到日历中,以便能够进行更改和创建事件。
  4. 我已经尝试创建一个POST请求到 https:/www.googleapis.comcalendarv3calendars日历Id事件,并将JSON键的内容作为JSON键的值。授权 头部,但我收到以下错误。

    { "error": { "errors": [ { "domain": "global", "reason": "authError", "message": "Invalid Credentials", "locationType": "header", "location": "Authorization" } ], "code": 401, "message": "Invalid Credentials" } }

是我错过了一些步骤还是我没有正确理解认证过程? 我将感谢你的帮助。

post google-cloud-platform google-calendar-api service-accounts
1个回答
2
投票

其不是简单的应用key文件的内容到你的调用的问题,所有的google apis需要一个访问令牌,以验证他们。

要从服务账户中获得访问令牌,你需要按照以下步骤进行。准备进行一个授权的API调用

为了获得访问令牌,你需要完成以下步骤,你需要调用api。

从API控制台获取客户端ID和私钥后,你的应用程序需要完成以下步骤。

  1. 创建一个JSON网络令牌(JWT,发音为 "jot"),其中包括一个头,一个声明集和一个签名。
  2. 向Google OAuth 2.0授权服务器请求访问令牌。
  3. 处理授权服务器返回的JSON响应。

我建议你选择你最喜欢的服务器端编程语言,并为它找到一个客户端库。 这将使事情变得更加简单,而不是你自己尝试使用服务账户进行自动授权。

© www.soinside.com 2019 - 2024. All rights reserved.