Flask-Mail没有发送电子邮件,没有报告错误

时间:2013-07-31 20:29:50

标签: flask

全部,我正在尝试设置flask-mail,以便在用户注册时向我的电子邮件发送通知。 我从用于发送电子邮件的脚本中没有收到任何错误消息,但实际上没有发送任何消息,或者至少没有收到任何消息。

是否有日志文件可以显示电子邮件是否已发送,被拒绝,或者是否在登录服务器时出现问题?如何追踪这个问题?

这里有什么想法吗?

3 个答案:

答案 0 :(得分:20)

Flask-Email使用smtplib可以设置调试级别:https://github.com/mattupstate/flask-mail/blob/master/flask_mail.py#L139。您可以使用MAIL_DEBUG = TrueDEBUG = True进行设置。另请检查MAIL_SUPPRESS_SEND = FalseTESTING = False

通过调试,我可以在stdout邮件进度中看到:成功,失败,收件人等。

查看详情:http://pythonhosted.org/Flask-Mail/#configuring-flask-mail

答案 1 :(得分:0)

tbicr最有可能修复,首先检查MAIL_SUPPRESS_SEND。

最终惹恼我(烧瓶新手)的是,当你实例化你的Mail()对象时,确保 之后你已经设置了你的应用程序。配置值。 Mail()对象不会返回并在事后查看这些值,因此它们将默认为错误值。令人沮丧的是,当您尝试使用默认值/错误值发送消息时,您将看不到任何错误。至少不是我的帖子。

答案 2 :(得分:0)

我知道这篇文章是从不久前开始的,但我刚遇到同样的问题。与@tbicr一样,请确保将app.testing设置为False。正如它在Flask-Mail文档here中所述:

“如果设置TESTING设置为True,则电子邮件将被取消。在您的邮件上调用send()不会导致实际发送任何邮件。”

这正是我的问题。我将Google reCAPTCHA实施到我的一个表单中,app.testing设置为True,因此我不必每次都点击reC​​APTCHA框。删除app.testing或将其设置为False,即可发送电子邮件。

相关问题