这是表中启动编辑器的脚本:
function ed2view() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var eds = ss.getEditors();
var ed = eds[1];
ss.removeEditor(ed);
ss.addViewer(ed);
}
它不起作用,因为显然,到 addViewer () 时,权利已经被撤销了。
如果只是 addViewer(),没有先删除Editor(),也不起作用:如果用户已经在编辑器列表中,则此方法无效。
另一方面,通过表格界面,编辑器可以降级为查看器。
请告知如何正确降低访问权限。
找到了UPD 解决方案,感谢 @oshilaer。原始错误“ReferenceError: Object 'Drive' is not defined”是由于未启用 Drive API: Script Editor: Resources/Additional Functions 和Google API Console 引起的。
主要任务:将编辑的权限降级为自己。
无需通过 Tables 文件操纵用户和访问。这些是间接方法,仅通过 Disk 文件类型的公共接口实现。
如果您使用高级驱动服务,那么一切都会像发条一样工作
编辑提交他的电子邮件并更改他对读者或评论者的权利。
片段