【发布时间】:2015-01-21 08:04:57
【问题描述】:
我从客户端收到一个包含 img 标签的 html,例如:
<body>
<b>hello</b>
<img src="http://i.imgur.com/KRnZgXh.jpg">
</body>
我正在尝试使用 sendgrid 发送此 html。
我正在使用 python sendgrid 客户端:
import sendgrid
sg = sendgrid.SendGridClient('user@example.com', 'passwd')
message = sendgrid.Mail()
message.add_to('Sample User<user@example.com>')
message.set_subject(subject)
message.set_html(content)
message.set_from('Sample User<user@example.com>')
sg.send(message)
这不成功 - 邮件没有发送。
我可以使用其他邮件服务(例如 mailgun)发送相同的内容。
【问题讨论】:
-
sg.send给你任何错误?sg.send的返回值是什么? -
不确定它是否相关,但您的 HTML 格式错误 - 它应该是
<img src="whatever" />(注意关闭) - 可能是 sendgrid 正在以某种方式解析文档而img未解析- 但如果您提供返回的任何错误会有所帮助 -
嗨,没有提供错误,我猜它在某个地方被阻止了。我试过 没有帮助
-
您可以通过 sendgrid 发送非 HTML 电子邮件吗?而不是
message.set_html(content)尝试message.set_text('hello')。如果这样可行,那么您很可能正在查看 HTML 问题。您也可以尝试包含<html>开始和结束标签。 -
另外,您可以尝试使用简单的电子邮件地址,即
user@example.com而不是Sample User<user@example.com>
标签: python html email sendgrid