我正在尝试使用以下谷歌脚本发送一封邮件,其中附有我的谷歌驱动器中可用的文件
var file=DriveApp.getFileById('1qZVK0UZ1jLbDdj10FXZqeAVEodvxEy2Bs');
MailApp.sendEmail('xyz@gmail.com','subject','body',{attachments[file.getAs(MimeType.PDF)]});
当我手动运行上面的脚本时,它运行良好,电子邮件被发送。但是当我使用表单提交触发器运行它时,它会给出错误“您无权调用 openById”
将重现问题的步骤?
- 创建一个谷歌表单。
- 在脚本编辑器上编写以上脚本,并在提交表单时添加触发器。
- 填写并提交表格,然后您将收到来自“apps-scripts-notifications@google.com”的邮件中的上述错误
请帮忙。
最佳答案
我遇到了同样的问题,但觉得必须使用 FormResponses 表来获取提交事件有点愚蠢(我的意思是表单应用程序脚本上有一个触发器是有原因的,对吧?)。
我所要做的就是删除并重新添加 From form 的触发器 --> On form submit。当我添加它时,要求我获得 OAuth 权限以查看和使用我的谷歌驱动器。
紧接着,我能够再次运行 Forms Apps Script Submission 触发器。
关于google-apps-script - 谷歌脚本错误 : You do not have permission to call openById,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22664183/