有谁有一些如何发送带有附件的电子邮件的示例node.js
与 aws ses 一起吗?
如果你想避免痛苦,你必须使用 Nodemailer 包装的 SES。直接使用AWS SDK,您无法使用以下方式发送附件ses.sendEmail
,你必须使用ses.sendRawEmail
,这很糟糕,因为你必须形成带有标题和其他内容的原始电子邮件,即使在我这样做之后,我也遇到了一个奇怪的错误,即发送了重复的电子邮件......
npm install nodemailer
const AWS = require('aws-sdk');
const nodemailer = require("nodemailer");
async function scheduledEmail () {
let usefulData = 'some,stuff,to,send';
let transporter = nodemailer.createTransport({
SES: new AWS.SES({ region: 'us-east-1', apiVersion: "2010-12-01" })
});
let text = 'Attached is a CSV of some stuff.';
// send mail with defined transport object
let info = await transporter.sendMail({
from: '"Some name" <[email protected] /cdn-cgi/l/email-protection>',
to: "[email protected] /cdn-cgi/l/email-protection",
subject: "Hello", // Subject line
text: text, // plaintext version
html: '<div>' + text + '</div>', // html version
attachments: [{
filename: "usefulData.csv",
content: usefulData
}]
});
console.log("Message sent: %s", info.messageId);
// Message sent: <b658f8ca-6296-ccf4-830[email protected] /cdn-cgi/l/email-protection>
return info; // or something
}
还有很多设置附件的其他方法的示例:https://nodemailer.com/message/attachments/ https://nodemailer.com/message/attachments/
如果您仍处于 SES 沙箱模式,则必须验证往返地址。在SES发送统计页面申请退出沙盒模式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)