sql-server - the - sql server mail profile
Incrustar imágenes en correos electrónicos creados con el correo de la base de datos de SQL Server (3)
Estoy trabajando SOLAMENTE en una solución de correo electrónico en SQL Server que utilizará el Correo de la base de datos para enviar correos electrónicos con formato HTML. El problema es que las imágenes en el HTML deben estar incrustadas en el correo electrónico saliente. Esto no sería un problema si estuviera usando una aplicación .net para generar y enviar correos electrónicos, pero, desafortunadamente, todo lo que tengo es SQL Server.
¿Es posible que SQL Server incruste imágenes por sí mismo?
Podría intentar codificar la imagen como base64 y referenciarla directamente en una etiqueta img dentro del correo electrónico ( <img src="data:image/png;base64[your encoded image here...]
) pero creo que la mayoría de los clientes de correo electrónico se correlacionan esta técnica con spam. Creo que es mejor que hagas referencia a imágenes alojadas o simplemente lo adjuntes al correo electrónico.
Sí, lo que debe hacer es incluir las imágenes como archivos adjuntos y luego se puede hacer referencia en el HTML.
Use el parámetro sp_send_dbmail
de sp_send_dbmail
Tienes dos posibilidades:
- (fácil) Aloje las imágenes en algún lugar, y haga referencia a ellas en
<img src="...">
. - (Difícil) Codifíquelos en Base64 y cree un mensaje MIME multiparte con identificaciones de contenido conocidas, para que puedan ser referenciados en el cuerpo del mensaje a través de
cid:
URI.
Cada posibilidad tiene sus desventajas:
- Es posible que las imágenes remotas no se carguen en los clientes modernos de correo electrónico para mayor privacidad.
- Probablemente aumente el puntaje de spam.
Cuando los clientes receptores están bajo su control (por ejemplo, la misma organización), puede estar igualmente de acuerdo con cualquier forma.