如何使用Google API服务库(Node.js)运行Google App脚本

时间:2018-05-09 17:06:26

标签: node.js google-apps-script

按照Google Apps脚本> Rest API Node.js quickstart示例我能够完成身份验证过程(按照链接,获取令牌,存储令牌)

但脚本执行失败并显示错误消息

The API returned an error: Error: Project title may not be empty.

project.create()的文档表明请求正文只需要包含{title:string},这是快速启动的内容。

仔细检查Google Apps脚本API是否已启用=是,但api启用页面显示了一些不应该使用的HTML代码,并且在该页面的“概述”部分中启用它使用url

我非常确定API已启用,因为我在console.cloud中看到了流量

方法如下所示。

  script.projects.create({
    auth,
    resource: {
      title: 'My Script'
    }
  });

我也尝试过auth:auth,因为这是我在其他地方工作过的(同样的错误消息)

错误堆栈如下所示。 enter image description here

换句话说,我完全按照快速启动并检查功能文档无济于事,有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我认为您的请求正文有效。那么你可以确认以下几点吗?

  1. 您使用的是哪个版本?在我的环境中,无法使用googleapis v25.0.0 - v30.0.0。我确认使用v24.0.0的googleapis工作正常。
    • 使用v24.0.0时,如果您的脚本使用var {google} = require('googleapis');,请修改为var google = require('googleapis');
  2. 请确认此页https://script.google.com/home/usersettings如果开关已关闭,请开启。这样,就可以使用Google Apps Script API。关闭开关后,即使授权使用Google Apps脚本API,用户也无法使用这些API。
  3. 注意:

    • 不幸的是,在v25.0.0的版本之后,报告了API和选项的一些错误。我相信将来会删除这些错误。因此,如果对于您使用的API和选项,会出现一些错误,请修改googleapis的版本,然后重试。

    参考文献:

    如果这些要点对你的情况没用,我很抱歉。