问题描述
我正在使用diff2Html npm库在我的lambda函数中生成两个json(当前经过硬编码)之间的差异,如下所示:
const Diff2html = require('diff2html');
const Diff = require('diff');
var gitDiff = require('git-diff')
const AWS = require("aws-sdk");
exports.handler = async (event) => {
let json1 = getJSON1();
let json2 = getJSON2();
var diff = Diff.createTwoFilesPatch("file","file",JSON.stringify(json1,undefined,4),JSON.stringify(json2,4));
const diffHtml = Diff2html.html(diff,{ drawFileList: true,outputFormat: "side-by-side"});
const finalHTML = `<!DOCTYPE html>
<html>
<body>
<!-- CSS -->
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/diff2html/bundles/css/diff2html.min.css" />
<!-- Javascripts -->
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/diff2html/bundles/js/diff2html.min.js"></script>
` +diffHtml+`
</body>
</html>`
var rawMailBody = "From: xyz@xyz.com\n";
rawMailBody = rawMailBody + "To: xyz@xyz.com\n";
rawMailBody = rawMailBody + "Subject: Test Diff Mail 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 + "\n";
const ses = new AWS.SES({ apiVersion: "2010-12-01" });
const params = {
RawMessage: {
Data: rawMailBody + finalHTML
},Destinations: ["xyz@xyz.com"],Source: "xyz@xyz.com"
};
const sendEmail = await ses.sendRawEmail(params).promise();
console.log(sendEmail)
sendEmail
.then(data => {
console.log("email submitted to SES",data);
})
.catch(error => {
console.log(error);
});
console.log("Done....")
//return response;
}
css 没有被应用到我的HTML正文。有没有一种方法可以将样式表添加到电子邮件正文中?还是SES不支持外部CSS?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)