Google App Engine灵活ENV上的Flask-Mail

时间:2018-01-23 22:14:29

标签: python google-app-engine flask flask-mail

我试图在Google App Engine上的Flexible ENV中设置Flask-Mail。 Flask-Mail使用我尝试用来发送邮件的域的凭据在我的localhost上运行。但是,当通过我的API在GAE上使用它时,它返回502错误,但它在日志或控制台中没有显示错误消息。通过GAE Flexible的文档,它没有提到任何关于无法使用它的内容,但是它并没有显示如何设置Flask-Mail。

我有这个..

mail = Mail()
print('1') // We Get here
msg = Message("Hello",
              sender="me@mydomain.com",
              recipients=["me@mydomain.com"])
print('2') // We get here
msg.body = 'Testing'
print('3') // We get here
mail.send(msg)
print('4') // This never gets call because I timeout on a 502 before this

我可以说我没有收到任何致命的错误,因为该应用程序仍在工作。然而,这失败了502.我已经尝试将我的电子邮件添加到授权发件人列表中,但它似乎没有帮助。

我将不胜感激任何反馈。如果我被迫使用第三方服务发送邮件,可能会导致我将项目移出GAE。

2 个答案:

答案 0 :(得分:0)

当Ivan发表评论时,要发送来自GAE应用程序的电子邮件,您需要使用邮件服务。目前,灵活环境中的应用程序有3个选项:Mailgun,MailJet和SendGrid。选择您认为最适合您应用的那个。

在您选择的邮件服务上设置帐户后,您必须通过集成与邮件服务相关的部分来准备您的代码。

这些教程应该可以帮助您为应用建立邮件服务:

答案 1 :(得分:0)

我也遇到了同样的错误,但是在互联网上的虚拟机上(linode服务),结果证明它与rDNS和必须为IP地址设置的某些域名配置有关为了使一切正常运行,请选中

https://www.linode.com/community/questions/19082/i-just-created-my-first-linode-and-i-cant-send-emails-why