请求访问当前用户的文件夹或文件,并将Google表单链接到Google表格onFormSubmit触发器

时间:2019-06-30 05:10:22

标签: google-apps-script google-drive-api google-form

我正在尝试使用Google表单,该表单除其他外包括纯文本字段,通常由Google云端硬盘文件夹链接或Google表格链接填充。这个想法是要获得对这些文件/文件夹的访问权限,但是此过程往往很乏味,因为当尝试访问收集的链接时,它们并未与我共享,因此我必须请求访问权限并等待用户授予它的权限。

我已经测试了以下代码,将其定义为绑定脚本和独立脚本,但始终出现诸如Exception: Action not allowed之类的错误,与允许访问用户数组的代码部分有关:

DriveApp.getFolderById(objectId).addEditors(emailsArr)

这是完整的代码(也尝试以编程方式安装触发器,无济于事):

  try {
    if (objectUrl.indexOf('drive') > -1) {
      // Link to Drive folder:
      objectId = objectUrl.split('id=')[1];
      Logger.log(objectId);
      accessedObject = DriveApp.getFolderById(objectId).addEditors(emailsArr);
      Logger.log(accessedObject);
    } else {
      // Link to doc:
      objectId = objectUrl.split('/')[5];
      Logger.log(objectId);
      accessedObject = DriveApp.getFileById(objectId).addEditors(emailsArr);
      Logger.log(accessedObject);
    }
  } catch(e) {
    console.log(e);
  }

当新用户通过发送表单响应来触发脚本时,是否可以采用通常的Google脚本授权对话?

0 个答案:

没有答案