【发布时间】:2021-08-27 18:36:09
【问题描述】:
根据 Apps 脚本documentation:
openById(id)
打开具有给定 ID 的电子表格。 ...
...
授权
使用此方法的脚本需要具有以下一个或多个范围的授权:
我想将openById 与spreadsheets.currentonly 范围一起使用,因为它适合我的需要。但是,即使将范围添加到 appsscript.json 清单后,以下代码对我来说仍然失败:
const sheet_id = SpreadsheetApp.getActiveSpreadsheet().getId();
SpreadsheetApp.openById(sheet_id);
例外:您无权调用 SpreadsheetApp.openById。所需权限:
https://www.googleapis.com/auth/spreadsheets
我知道我可以只使用https://www.googleapis.com/auth/spreadsheets 范围,但是由于文档说我应该能够使用spreadsheets.currentonly,这就是我想要做的。我在这里做错了什么?
更新:
This answer 是相关的,但建议的解决方法对我不起作用。我上面分享的代码 sn-p 是在脚本编辑器中执行的。我也不打算创建自定义函数。我打算在 Web 应用脚本的 doPost(e) 函数中运行此代码。
【问题讨论】:
标签: google-apps-script post google-sheets web-applications scopes