我正在使用SendGrid v3 API和C#库(v7)发送电子邮件。在我的电子邮件中,我有一个标题,这是一个png。头部是这样嵌入的:
<img src="cid:emailheader"/>
在C#代码中,我使用相同的ContentId将图像作为附件发送
var mail =新邮件(发件人,主题,收件人,内容);
var headerPath = HttpContext.Current.Server.MapPath("~/Resources/email-header.png");
var attachment = new SendGrid.Helpers.Mail.Attachment();
attachment.ContentId = "emailheader";
attachment.Content = Convert.ToBase64String(File.ReadAllBytes(headerPath));
attachment.Type = "image/png";
attachment.Filename = "email-header.png";
mail.AddAttachment(attachment);
var send = sg.client.mail.send.post(requestBody: mail.Get());
然而,当我打开电子邮件时,即使图像正确地显示在附件中,它也显示没有找到源
发布于 2018-06-13 07:06:13
节点
//imageData= "data:image/png;base64,ine793nfdsf......."
imageb64 = imageData.replace('data:image/png;base64,' , '');
//remove data:image/png;base64,
const msg = {
to: 'example@gmail.com',
from: 'test@gmail.com',
subject: "image attached",
html :'<img src="cid:myimagecid"/>',
attachments: [
{
filename: "imageattachment.png",
content: imageb64,
content_id: "myimagecid",
}
]
};
sgMail.send(msg);
https://stackoverflow.com/questions/38845177
复制相似问题