我正在尝试通过Google App Engine开发服务器在本地发送邮件:
dev_appserver.py --show_mail_body true --smtp_host=xxx --smtp_port=25 --smtp_user=xxx --smtp_password=xxx app.yaml
if err := mail.Send(c, &mail.Message{
Sender: "[email protected]",
To: []string{"[email protected]"},
Subject: "Test",
Body: "Text Body",
HTMLBody: "HTML Body",
}); err != nil {
c.Errorf("%v", err)
}
不幸的是,这导致以下错误:
File "/usr/local/Cellar/python/2.7.8_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/smtplib.py", line 731, in sendmail
senderrs[each] = (code, resp)
TypeError: unhashable instance
有人可以帮我解决这个问题吗?
--enable_sendmail true
有效。 Traceback。 最佳答案
smtplib.py
的该位正在处理rcpt()
的错误,该错误已尝试将rcpt TO:[email protected]
发送到smtp。所以有两个问题:rcpt
提示什么,以及unhashable instance
怎么回事。对于后者,我建议提交错误报告。该代码不应该这样做。对于前者,真的很想在print
上方的smtplib.py
中放入一些简单的senderrs[each] = (code, resp)
调试。 smpt可能会向您显示一些简单的上游错误,绕过该错误可能会消除对整理不可哈希实例的需求(我想这是由GAE端的代码引起的)。
关于python - Google App Engine mail.Send在python2.7/smtplib.py中返回 “TypeError: unhashable instance”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27195432/