【发布时间】:2020-02-13 18:03:05
【问题描述】:
我的任务是创建一个简单的邮件工具,用于向我们公司的内部团队发送电子邮件。我已经完成了创建电子邮件模板和使用 NodeJS 的练习,使用 nodemailer 库基于此模板创建消息并将电子邮件发送给用户。但是,在尝试将图像添加到模板时,发送给收件人的电子邮件会将图像重写为似乎是 google 缓存代理系统,即
https://somesystem.some.localtion.io/content/myimage.png
被重写为:
图像无法正确解析,因为我们使用了谷歌缓存/代理系统无法访问的本地 cdn。
根据以下文章, Dynamic Images for email such as countdown clocks (in light of gmail image caching)
我已尝试将消息选项添加到标题中:
{
"host": this.email_server,
"port": this.port,
"headers": {
"Content-Type": "image/jpeg",
"Cache-Control": "no-store, no-cache, must-revalidate, max-age=0",
"Cache-Control": "post-check=0, pre-check=0",
"Pragma": "no-cache"
}
}
但是问题依然存在。
我们还尝试了对图像进行 base64 编码并将其包含在模板中,但似乎 google 将其删除了。
很遗憾,由于专有图像和其他业务原因,我们无法公开此 CDN,因此无法选择。如果有其他建议,请告诉我。
【问题讨论】:
标签: node.js image gmail nodemailer