我已经使用web-apps-script创建了一个Google电子表格,并希望为其分配仅查看权限。
我该怎么做,我尝试了许多不同的方法,但是它不起作用,并且不断给我错误。
我希望通过获取可共享链接或将其添加到公共文件夹中的任何方法来与其他用户共享文件。
首先,我尝试使用脚本共享它,但是收到错误消息:-
var ssNew = SpreadsheetApp.create("allowance "+(new Date));
var ss = SpreadsheetApp.openByUrl(ssNew.getUrl());
var fileId = ss.getId();
DriveApp.getFileById(fileId).addEditor("sritu@gmail.com");
然后我尝试将电子表格移到公用文件夹中,但没有任何效果,并且收到错误消息:-
var ssNew = SpreadsheetApp.create("allowance "+(new Date));
var folder=DriveApp.getFolderById('0AOexqtJ8UhRxPWUyk9PVxxA');
var id = ssNew.getId();
var file = DriveApp.getFileById(id);
folder.addFile(file);
答案 0 :(得分:1)
考虑到您遇到的错误,这是我认为正在发生的事情:
DriveApp.getFileById
不是代码的一部分,因此您没有授权调用此方法所需的作用域。DriveApp.getFileById
,这需要https://www.googleapis.com/auth/drive.readonly
或https://www.googleapis.com/auth/drive
。Review Permissions
和授权DriveApp.getFileById
)。相反,您可能试图通过最新代码(URL以/dev
结尾)测试该Web应用,但这不一定要求您更新权限。要解决此问题,请创建一个新的 Project版本,然后根据您的要求检查您的权限(或更新该Web应用程序的其他任何设置,例如 Execute as as >,它也会提示授权弹出窗口。