0

我目前在谷歌教育领域工作,我想通过谷歌表单的 onSubmit 触发器自动生成谷歌文档。我有一个模板文件,我想复制它,然后用表单中的响应替换字段(例如,{{name}})。

提交后,模板谷歌文档被成功复制并重命名,但我无法打开文档来替换文本字段。

var templateFile = DriveApp.getFileById(id);
var targetFolder = DriveApp.getFolderById(id);
var newDocName = title + "_" + name + "_" + submissionDate;
var newFile = templateFile.makeCopy(newDocName, targetFolder);
var newFileId = newFile.getId();
var doc = DocumentApp.openById(newFileId);
var body = doc.getBody();

该文档被复制并重命名,但在“DocumentApp.openById”处引发错误

您无权调用 DocumentApp.openById。所需权限:https ://www.googleapis.com/auth/documents at onSubmit(代码:81)

我不知道为什么,因为我是表单和模板的所有者!

4

1 回答 1

1

正如一位用户所说,您至少需要直接从编辑器运行代码(函数)一次。这将提示您 oauth 同意屏幕,以便您可以授权代码所需的范围(在本例中为驱动器和文档 API 范围),并将使用这些范围更新您的项目。

于 2019-07-22T14:19:26.907 回答