如何使用GoogleAPI服务库(Node.js)运行GoogleApp脚本

如何使用GoogleAPI服务库(Node.js)运行GoogleApp脚本,node.js,google-apps-script,Node.js,Google Apps Script,通过遵循GoogleAppsScript>RESTAPI示例,我能够完成身份验证过程(遵循链接,获取令牌,存储令牌) 但是脚本执行失败,并显示错误消息 The API returned an error: Error: Project title may not be empty. project.create()的文档表明请求主体只需要包含快速启动所具有的{title:string} 双击Google Apps Script API is enabled=是,但是API enable页面显示

通过遵循GoogleAppsScript>RESTAPI示例,我能够完成身份验证过程(遵循链接,获取令牌,存储令牌)

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

The API returned an error: Error: Project title may not be empty.
project.create()的文档表明请求主体只需要包含快速启动所具有的{title:string}

双击Google Apps Script API is enabled=是,但是API enable页面显示了一些不应该显示的html代码,并且该页面概述部分中的enable it for use(启用它以供使用)部分被破坏

我很确定这个API是启用的,因为我在console.cloud中看到了流量

方法如下所示

  script.projects.create({
    auth,
    resource: {
      title: 'My Script'
    }
  });
我还尝试了auth:auth,因为这是我在其他地方看到的工作(相同的错误消息)

错误堆栈如下所示。


换句话说,我严格遵循了快速入门,检查了函数文档,但没有结果,有人能帮我吗?

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

  • 你用的是什么版本?在我的环境中,带有v25.0.0-v30.0.0的googleapis无法工作。我确认使用v24.0.0的googleapis工作正常。
    • 当您使用v24.0.0时,如果您的脚本使用
      var{google}=require('googleapis'),请修改为
      var google=require('googleapis')
  • 请确认此页如果开关已关闭,请打开。这样,就可以使用谷歌应用程序脚本API。当开关关闭时,即使Google Apps脚本API的作用域得到授权,用户也不能使用这些API
  • 注:
    • 不幸的是,在v25.0.0版本之后,报告了API和选项的一些错误。我相信这些错误在将来会被清除。因此,如果对于API和您使用的选项,出现了一些错误,请修改googleapis的版本,然后重试
    参考资料:

    如果这些要点对您的情况没有帮助,我很抱歉。

    确实是谷歌api版本,npm安装googleapis@24.0.0 --save@Rob谢谢你的回复。我很高兴你的问题解决了。我还想把你的问题添加到未来答案的参考中。我认为这将帮助其他用户解决相同的错误。