在使用SQL Server数据库邮件创建的电子邮件中嵌入图像
时间:2020-03-05 18:45:26 来源:igfitidea点击:
我正在研究仅在SQL Server中使用的电子邮件解决方案,该解决方案将使用数据库邮件发送HTML格式的电子邮件。问题是HTML中的图像需要嵌入到传出电子邮件中。如果我使用.net应用程序生成和发送电子邮件,这将不是问题,但是不幸的是,我所拥有的只是SQL Server。
SQL Server是否可以自行嵌入图像?
解决方案
回答
我们可以尝试将图像编码为base64并直接在电子邮件中的img标签中引用它(<img src =" data:image / png; base64 [此处是我们编码的图像...]
),但是我认为大多数电子邮件客户将此技术与垃圾邮件相关联,我认为最好不要引用托管图像或者将其添加到电子邮件中。
回答
是的,我们需要做的是将图像作为附件包含在内,然后可以在HTML中对其进行引用。
使用sp_send_dbmail
的@ file_attachment
参数
回答
我们有两种可能性:
- (简单)将图像托管在某个地方,然后在<img src =" ...">中引用它们。
- (困难)在Base64中对它们进行编码,并使用已知的内容ID构建多部分的MIME消息,因此可以通过
cid:
URI在消息主体中对其进行引用。
每种可能性都有其缺点:
- 出于隐私目的,可能不会在现代电子邮件客户端上加载远程图像。
- 可能会提高垃圾邮件得分。
当接收方的客户处于控制权(例如同一组织)中时,两种方法都可以满足要求。