【发布时间】:2020-03-20 02:53:18
【问题描述】:
我正在使用 amazon SES 通过 node.js aws-sdk 库发送 HTML 电子邮件。这是我用来发送它的 js 脚本:
export const main: APIGatewayProxyHandler = async (event, _context) => {
const success = await sendEmail()
return {
statusCode: 200,
body: JSON.stringify({
message: 'Done!',
input: event,
}, null, 2),
};
}
const sendEmail = async () => {
const fileName = "2019-W-4.pdf";
var rawMailBody = "From: jim@bubbleflumps.com\n";
rawMailBody = rawMailBody + "To: jim@bubbleflumps.com\n";
rawMailBody = rawMailBody + "Subject: Test Subject Dueces 3\n";
rawMailBody = rawMailBody + ``
rawMailBody = rawMailBody + "MIME-Version: 1.0\n";
rawMailBody = rawMailBody + "Content-Type: multipart/mixed; boundary=\"NextPart\"\n\n";
rawMailBody = rawMailBody + "--NextPart\n";
rawMailBody = rawMailBody + "Content-Type: text/html;\n";
rawMailBody = rawMailBody + "Content-Transfer-Encoding: quoted-printable\n";
rawMailBody = rawMailBody + "\n";
const emailData = await getEmailData();
rawMailBody = rawMailBody + emailData;
console.log('final body', rawMailBody)
const params = {
RawMessage: {
Data: rawMailBody
},
Destinations: [],
Source: 'jim@bubbleflumps.com'
};
ses.sendRawEmail(params, function (err, data) {
if (err) console.log("Error: " + err);
else {
console.log("Success call: ", JSON.stringify(data));
return data
}
});
}
const getEmailData = () => {
return new Promise( (resolve, reject) => {
var output = '\n';
var readerStream = readline.createInterface({
input: require('fs').createReadStream('./simple.html')
});
readerStream.on('line', function (line) {
const newLine = line;
output = output + newLine;
console.log('reading...', line)
});
readerStream.on('close', () => {
console.log('closing...' , output)
output = output + "\n";
resolve(output);
});
})
}
这是我正在阅读并插入到电子邮件中的“simple.html”文件:
<html>
<body>
<table style="background-color: #737373; color: orange;">
<tr>
<td style="background-color: #737373; color: orange;">
<span style="background-color: #737373; color: orange">
Hello!
Hello2!
</span>
</th>
<h2>More cool Stuff!</h1>
<pre>some pre text...!</pre>
<p>Please see the attached file for a list of customers to contact.</p>
<h1>Yaaaaa!</h1>
</td>
</tr>
</table>
</body>
</html>
如您所见,我正在尝试设置文本“Hello”和“Hello2!”的样式。灰色背景和橙色。但是,这是我在 gmail 中看到的:
它 以 HTML 形式出现,但出于某种原因,我无法获得任何要应用的样式。看了其他帖子后,每个人都说使用内联样式应该可以,但我正在使用内联样式...
谁能帮忙指出我在这里做错了什么?
谢谢!
【问题讨论】:
标签: css email html-email mime-types amazon-ses