Google apps script 共享文件时不发送通知
我编写了一个代码,可以将某个文件夹的文件复制粘贴到其他文件夹,并与其他人共享文件,这些人可以编辑或查看文件 我需要在将副本和权限复制到新文件时,不向编辑和查看者发送电子邮件通知操作 你使用的第一个代码是:Google apps script 共享文件时不发送通知,google-apps-script,google-drive-api,Google Apps Script,Google Drive Api,我编写了一个代码,可以将某个文件夹的文件复制粘贴到其他文件夹,并与其他人共享文件,这些人可以编辑或查看文件 我需要在将副本和权限复制到新文件时,不向编辑和查看者发送电子邮件通知操作 你使用的第一个代码是: var PeopleToEdit = file.getEditors(); var PeopleToView = file.getViewers(); for (var i=0 ; i < PeopleToEdit.length; i++){ newFil
var PeopleToEdit = file.getEditors();
var PeopleToView = file.getViewers();
for (var i=0 ; i < PeopleToEdit.length; i++){
newFile.addEditor(PeopleToEdit[i]);}
for (var i=0 ; i < PeopleToView.length; i++){
newFile.addViewer(PeopleToView[i]);}
var PeopleToEdit=file.getEditors();
var PeopleToView=file.getViewers();
for(var i=0;i
但是,对于电子邮件,我试着这样做:
function addEditors(file1, file2){
var file = DriveApp.getFileById(file1);
var PeopleToEdit = file.getEditors();
for (var i=0 ; i < PeopleToEdit.length; i++){
Drive.Permissions.insert(
{
'role': 'writer',
'type': 'user',
'value': PeopleToEdit[i].getEmail()
},
file2,
{
'sendNotificationEmails': 'true'
});
函数加法器(文件1、文件2){
var file=DriveApp.getFileById(file1);
var PeopleToEdit=file.getEditors();
for(var i=0;i
在我的本地驱动器中工作,但当我在共享驱动器中使用它时,显示此错误,我不知道会发生什么
GoogleJsonResponseException:对drive.permissions.insert的API调用失败,错误为:未找到文件:1-QSWWZI2F0PHJW4AO_LLP5fLn2Ica_MhkUClM-s-E
两件事
supportsAllDrives
设置为true
sendNotificationEmails
设置为false
Drive.Permissions.insert(
{
“角色”:“作者”,
“类型”:“用户”,
“值”:PeopleToEdit[i].getEmail()
},
文件2,
{
“SupportsAllDrive”:正确,
“sendNotificationEmails”:false
});
您好,谢谢。错误不再显示,它可以工作,但现在只与“成员”和“来宾”共享在中,我要复制的文件不会出现在新文件中。但非常感谢。您好!您所说的来宾是什么意思?
?不是共享驱动器的成员但有权访问您要插入的文件的人权限?此文件副本是否分配在共享驱动器中?您好,是的,文件在共享驱动器中,但此文件不在共享驱动器中与不同的人单独共享。例如,共享驱动器中有16人,其中包含6个文件。这6个文件与16人(成员)共享,文件号1与成员(16人)和4人(来宾)同时共享,文件号2与“成员”共享和其他不同的7个人(来宾)。当它运行时,只与成员共享(16),我需要文件也与来宾共享。我不知道我是否解释得很好,谢谢lotInPeopleToEdit[I]。getEmail()
你有所有想要的用户吗(即,共享驱动器中的用户加上来宾
?当您登录PeopleToEdit
时,此数组是否包含您所需的所有用户?您的意思是除了PeopleToEdit
之外,还要对PeopleToView
执行相同的请求?