通过邮递员向Google Apps Script API发出请求

时间:2019-06-27 22:44:10

标签: google-apps-script google-cloud-platform postman http-status-code-403 google-apps-script-api

我正在尝试通过邮递员请求使用apps脚本api远程执行google apps脚本功能。

我首先从Google API Playground

获得凭据

然后将它们作为OAuth2凭证输入到邮递员中,并输入到标头中,如下所示: enter image description here

然后请求适当的链接: enter image description here

然后尸体准备好了: enter image description here

然后发出请求后的响应: enter image description here

邮递员返回错误403,根据Google's documentation

表示“用于授权请求的Cloud Platform项目与脚本使用的项目不同。”错误403是授权错误,可能有很多含义,但是我们假设该错误就是Google宣称的错误。

我完全可以控制脚本使用的GCP项目,但是我不知道在哪里可以找到用于授权请求的项目。

我在哪里可以访问此GCP项目,以便可以将脚本分配给该项目,从而消除403错误?

谢谢!

2 个答案:

答案 0 :(得分:3)

要将OAuth Playground中的OAuth访问令牌与Apps脚本一起使用,您需要从同一项目中指定正确的客户端ID和客户端密钥。

在OAuth游乐场中。点击齿轮图标(右上角)。选择“使用您自己的OAuth凭据”。然后输入在与Apps脚本相同的项目中创建的客户端ID和秘密ID。

答案 1 :(得分:0)

要通过Postman使用有效的访问令牌查询Google URL,您可以从应用脚本中记录访问令牌,然后使用。

在验证范围后,即在首次运行脚本时,在您的应用脚本中,记录令牌:

function logToken(){
  Logger.log(ScriptApp.getOAuthToken());
}

然后在Postman中,通过在标头中设置访问令牌来查询Google URL:

“授权”:“承载者THE_ACCESS_TOKEN”

安全警告:出于安全原因,我必须告诉您访问令牌在1小时内有效,因此从技术上讲,如果您使用此访问令牌将完整的驱动器范围授予您的应用,我们可以浏览您的所有云端硬盘