以下代码位于与Google表单关联的Google电子表格的onFormSubmit触发器中:
var folders = DriveApp.getFoldersByName("Test 2016 - 2017");
if (!folders.hasNext()) {
var folder = DriveApp.createFolder("Test 2016 - 2017");
} else {
var folder = folders.next();
}
var
docID = DriveApp.getFileById('id').makeCopy('Test Document ', folder).getId();
}
当有人使用表单的链接并提交表单时,此脚本将为表单/电子表格的所有者创建一个文件夹 - 我。
不应该为当前用户设置DriveApp吗?我打电话给错了吗?这是Google的错误吗?有人可以帮忙吗?
谢谢你的时间!
答案 0 :(得分:4)
这是设计的。 onFormSubmit触发器以所有者权限运行。想象一下,只需填写表单就可以访问您的脚本所具有的任何范围,而无需您进行授权。
改为构建一个webapp,并将其发布为以用户身份运行。
答案 1 :(得分:-1)
您可以在DriveApp类中使用Access和Permission。
docID.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.EDIT);
参考文献: