google-apps-script - 添加 Gmail 发送权限
问题描述
我试图根据onEdit()
触发器发送电子邮件。但是得到这些例外。它没有征求我的任何许可。我在哪里可以添加这些gmail.send和gmail.compose权限?
2020 年 8 月 14 日,晚上 9:29:23 错误异常:脚本无权执行该操作。所需权限:(https://www.googleapis.com/auth/gmail.send || https://www.googleapis.com/auth/gmail.compose || https://www.googleapis.com/auth/ gmail.modify || https://mail.google.com/ || https://www.googleapis.com/auth/gmail.addons.current.action.compose ) 在 emailSender(代码:54:13) 在 onEdit (代码:70:6)
如果我运行以下函数,它会使用相同的脚本将电子邮件发送到我想要的邮件地址。
function testEmail(){
GmailApp.sendEmail("shahrearbinamin1@gmail.com",
"Price Changed",
"test");
}
但是以下电子邮件发送功能无法正常工作,最终出现上一个错误。
function emailSender(website,name, price){
GmailApp.sendEmail("shahrearbinamin1@gmail.com",
"Price Changed",
website+"'s "+name+" New Price : "+price);
}
function onEdit(e){
var row = e.range.getRow();
var column = e.range.getColumn();
var currentSheetName = e.source.getActiveSheet().getName();
if(currentSheetName==="Coles"){
if(column===5)
{
var name = e.source.getActiveSheet().getRange(row,2);
emailSender("Coles",name,e.value);
}
}
else if(currentSheetName==="Woolworths"){
if(column===6 && e.oldValue.length!==0){
var name = e.source.getActiveSheet().getRange(row,2);
emailSender("Woolworths",name,e.value);
}
}
}
在这里,我在File->Project Properties下找到了权限。试图在这里添加权限脚本属性选项卡。但它没有与以下许可一起添加。
解决方案
简单的触发器无法发送电子邮件。使用可安装的触发器。
参考
有关的
推荐阅读
- c++ - C/C++ 错误,collect2.exe: error: ld returned 1 exit status
- javascript - 删除重复键并组合 JavaScript 数组中的唯一值
- flutter - 在颤动的文件夹中为每个循环做一个
- node.js - `dns.resolvePtr()` 方法的目的是什么?
- javascript - 将用户输入存储在数组中并显示在屏幕上
- cassandra - 对 cassandra 中的不同节点使用不同的硬件规格会导致问题吗?
- python - 读取 csv 并遍历 10 个行块
- maven - gitlab ci/cd 触发两个或多个下游管道
- kubernetes - 印花布 IP 混乱
- angular - Typescript / Angular中具有0个元素的函数返回映射