【发布时间】:2020-09-15 00:18:33
【问题描述】:
是否可以直接从 Google 表格将 Google Scripts 部署为网络应用程序?
我正在尝试向 Google 表格添加自定义菜单,用户可以在其中以编程方式将文件的脚本部署为网络应用程序。看起来可以按照this GitHub repo 的说明进行操作。
但出于显而易见的原因,我需要将projectId 设置为等于ScriptApp.getScriptId(),以便在复制电子表格文件时,此变量会动态设置为等于该脚本的唯一ID。但是,当从我设置的自定义菜单(甚至从脚本本身内部)执行 saveAndDeployNewVersion() 时,我总是将 deploymentId 返回为未定义,然后从链中的最终函数(@987654327 @)。
有没有其他方法,或者,你能指出我在我自己的项目中实现这个脚本时做错了什么吗?
对https://script.googleapis.com 的请求失败,返回代码 403。截断的服务器响应:{ "error": { "code": 403, "message": "Apps Script API 之前未在项目 575477635395 中使用或已禁用。通过 vi 启用它...(使用 muteHttpExceptions 选项检查完整响应)(第 211 行,文件“代码”)
【问题讨论】:
-
403 是授权问题。您是否在清单中包含了所需的范围?
-
能否请您发布完整的错误信息?
-
@TheMaster,我有。完全按照 repo 中的说明。
-
@Alessandro,这是另一个问题。我收到一条被截断的消息,无法找到查看整个内容的方法。我已经尝试将
muteHttpExceptions设置为true。但这只是隐藏了错误消息。这就是我所能看到的:Request failed for https://script.googleapis.com returned code 403. Truncated server response: { "error": { "code": 403, "message": "Apps Script API has not been used in project 575477635395 before or it is disabled. Enable it by vi... (use muteHttpExceptions option to examine full response) (line 211, file "Code")
标签: google-apps-script google-sheets http-status-code-403 google-apps-script-api