2

我正在寻找基于电子邮件地址和传递给脚本的 DocumentID 重置外部电子表格默认权限的示例脚本。我打算创建一个脚本,该脚本可以从电子邮件消息中解析信息以获取 DocumentID 和电子邮件,执行从默认到具有链接的任何人的权限更改,然后使用该链接通过电子邮件发送传递的地址。

似乎烫发是由 DocList API 控制的,我没有找到与该 API 交互的 GAS 样本。

4

2 回答 2

7

在 2013 年 Google I/O 上,推出了 DriveApp。这允许开发人员构建用例,例如通过链接分享给任何人

https://developers.google.com/apps-script/reference/drive/

示例代码 -

 var quizTemplate = DriveApp.getFileById(QUIZ_TEMPLATE_ID);  
  quizTemplate.setSharing(DriveApp.Access.DOMAIN_WITH_LINK, DriveApp.Permission.VIEW);

或者

  var openFile = DriveApp.getFileById(WIDE_OPEN_ID)
  openFile.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.COMMENT);
于 2013-08-30T12:03:01.230 回答
3

AFAIK DocsList 服务没有更改共享模式的功能,在私人/任何有链接的人/公共之间,只能添加/删除编辑者和查看者。但是我们仍然可以通过之前手动将特定文件夹的共享设置设置为“任何有链接的人”来实现这一点。然后,我们只需将文件添加到该文件夹​​即可共享。

执行此操作的脚本特别简单。例如

function shareWithAnyoneAndEmail(documentID,email) {
  var sharedFolder = DocsList.getFolderById('id-to-your-previously-shared-folder');
  var file = DocsList.getFileById(documentID);
  file.addToFolder(sharedFolder);
  MailApp.sendEmail(email, 'Here is your file', file.getName()+'\n'+file.getUrl());
}
于 2012-05-18T01:08:39.583 回答