Мне было поручено создать простой почтовый инструмент, который отправляет электронные письма внутренним группам нашей компании. Я прошел через упражнение по созданию шаблона электронной почты и использованию NodeJS с библиотекой nodemailer для создания сообщения на основе этого шаблона и отправки электронной почты пользователю. Тем не менее, при попытке добавить изображения к шаблону, получающемуся электронному письму получателя, изображения были переписаны в систему, которая выглядит как кеширующая прокси-система Google, т.е.
https://somesystem.some.localtion.io/content/myimage.png
получаетпереписано в:
https://ci6.googleusercontent.com/proxy/eXuw8UXTcDdsC03GMBJvrQH1Z-Fbu1blh0cCeAw64q1vfx_C20DTRT-T5FSNJw-3G59tIBb3jmvQIpI9x8O7Us4gyHs3uf01dMytVF-EozUHlr23UGA=s0-d-e1-ft#https://somesystem.some.localtion.io/content/myimage.png
Изображения не разрешаются должным образом, так как мы используем локальный cdn, к которому система кэширования / прокси-сервер Google не имеет доступа.
Основываясь на следующей статье, Динамические изображения для электронной почты, такие как часы обратного отсчета (в свете кэширования изображений Gmail)
Я попытался добавить в заголовки сообщенияВарианты как:
{
"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 общедоступным, поэтому это не вариант. Если есть другие предложения, пожалуйста, дайте мне знать.