[英]google script openById : You do not have permission to perform that action
[英]Google Script Error: You do not have permission to call openById
我正在嘗試使用以下谷歌腳本發送一封郵件,並附上我的谷歌驅動器中可用的文件
var file=DriveApp.getFileById('1qZVK0UZ1jLbDdj10FXZqeAVEodvxEy2Bs');
MailApp.sendEmail('xyz@gmail.com','subject','body',{attachments[file.getAs(MimeType.PDF)]});
當我手動運行上面的腳本時,它運行良好,會發送電子郵件。 但是當我使用表單提交觸發器運行它時,它會出現錯誤“您無權調用 openById”
將重現問題的步驟?
請幫忙。
我在表單本身上創建腳本時發現了這一點。
要解決該問題,您首先需要將回復發送到電子表格。
從您的表單轉到工具 > 腳本編輯器...復制您的腳本並刪除您在那里設置的所有觸發器,您將不再需要此腳本。
現在單擊表單中的查看回復按鈕以打開電子表格。
現在像往常一樣設置觸發器。 .您會發現新觸發器的第三個下拉列表具有選項。
一旦您的腳本在任何時候提交表單時獲得授權,該事件就會觸發並且可以訪問 DriveApp。
一旦你測試並讓它工作,我會回到表單並刪除那里的腳本項目。 我這樣做是為了讓事情保持整潔並避免混亂,如果我以后來更改腳本並且忘記了哪個實際是實時的。
我不知道谷歌表單是否有限制他們訪問雲端硬盤或其他東西的限制。
我遇到了同樣的問題,但覺得必須使用 FormResponses Sheet 來獲取提交事件有點愚蠢(我的意思是 Form Apps Scripts 上有一個觸發器是有原因的,對吧?)。
我所要做的就是刪除並重新添加From form --> On form submit的觸發器。 當我添加它時,向我挑戰了查看和使用我的谷歌驅動器的 OAuth 權限。
緊接着,我能夠再次在 Forms Apps Script Submission 觸發器上運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.