0

我尝试发送包含文本、html 版本的正文和附件的电子邮件。我使用带有附加代码的标准 python 示例:

img = MIMEImage(some_image_file)
img.add_header('Content-Disposition','attachment; filename="file.jpg"')
msg.attach(text_body)
msg.attach(html_body)
msg.attach(img)

Gmail 可以很好地显示我的电子邮件,但是 yandex.com 的电子邮件客户端仅显示没有 html 或正文正文的附件图片。

如果我这样更改顺序:

msg.attach(img)
msg.attach(html_body)

Yandex 仅显示我的信件的 html 正文,不显示附件!

为了在任何电子邮件客户端中正确显示我的电子邮件(html/txt 正文和附件),我是否需要添加任何其他标题?

4

1 回答 1

0

在对从普通电子邮件客户端发送的电子邮件标头进行一些研究后,我找到了解决方案:

body = MIMEMultipart('alternative')
msg = MIMEMultipart('mixed')
....
body.attach(text_body)
body.attach(html_body)
msg.attach(body)
msg.attach(img)
于 2013-10-14T20:46:05.813 回答