微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SES 使用 nodejs 和 javascript 动态发送电子邮件

如何解决SES 使用 nodejs 和 javascript 动态发送电子邮件

我正在使用 node-ses 发送一封工作正常的电子邮件

client.sendEmail({
   to: to_id,cc: cc_id,bcc: bcc_id,subject: 'greetings',message: 'your <b>message</b> goes here',altText: 'plain text'
},function (err,data,res) {
 // ...
});

现在的问题是,如果cc_id 为空或NULL,那么它会出错并说需要cc_id。如果我从上面的代码中跳过 cc_id 就可以了。

我试过这个脚本

if (typeof bcc_email_id !== 'undefined' && bcc_email_id != null) {
    bcc_email_id = bcc_email_id.split(",");
    emailStr.push('bcc:' + bcc_email_id);    
}               
if (typeof cc_email_id !== 'undefined' && cc_email_id != null) {
    cc_email_id = cc_email_id.split(",");
    emailStr += 'cc:' + cc_email_id;
}

client.sendEmail({
  emailStr,altText: 'plain text'
  },res) {
   // ...
});

但是没有用。任何想法如何使它动态,

解决方法

我猜在 node-ses 中有一些验证代码,用于检查 cc 属性是否存在,那么它不能是 null 或空字符串。

尝试将第 3 行更改为:

,cc: cc_id || undefined

这样,验证代码将假定 cc 属性不存在并且不会尝试验证它。

验证代码将假定属性不存在,因为如果 cc_id || undefinedundefined 或为空,并且如果属性不存在,代码 cc_id 将返回 null然后尝试访问它的结果为 undefined

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。