gpt4 book ai didi

python - 将 Flask-Mail 与 Heroku 和 Mailgun 结合使用时,电子邮件无法发送

转载 作者:太空宇宙 更新时间:2023-11-03 19:03:56 25 4
gpt4 key购买 nike

我一直在编写一个简单的应用程序来测试如何使用 Flask-Mail 通过 SMTP 方法发送电子邮件(需要是 SMTP 才能移植到不同的 SMTP 服务)。为此,我尝试通过 Heroku 使用 Mailgun,但经过多次尝试、错误和研究后,我似乎仍然无法发送电子邮件。

我的问题与这个问题类似,Flask on Heroku with MailGun config issues ,但是除了使用 Mailgun 的 API 之外,我看不到这个问题的任何解决方案,这对于我正在从事的项目来说是不可行的。

目前我的 flask / flask 邮件代码设置如下(当然是精简的):

from flask import Flask
from flask.ext.mail import Mail
from flask.ext.mail import Message

app = Flask(__name__)
mail = Mail(app)

app.config.setdefault('SMTP_SERVER', environ.get('MAILGUN_SMTP_SERVER'))
app.config.setdefault('SMTP_LOGIN', environ.get('MAILGUN_SMTP_LOGIN'))
app.config.setdefault('SMTP_PASSWORD', environ.get('MAILGUN_SMTP_PASSWORD'))
app.config.setdefault('MAIL_SERVER', environ.get('MAILGUN_SMTP_SERVER'))
app.config.setdefault('MAIL_USERNAME', environ.get('MAILGUN_SMTP_LOGIN'))
app.config.setdefault('MAIL_PASSWORD', environ.get('MAILGUN_SMTP_PASSWORD'))
app.config.setdefault('MAIL_USE_TLS', True)

def EmailFunction(UserEmail):
msg = Message("Hello",
sender='testing@test.com',
recipients=[UserEmail])

msg.html = "<b>testing</b>"
mail.send(msg)
return msg.html

@app.route('/EmailTest/')
def EmailTestPage():
EmailFunction('developer@test.com')
return 'Email Sent'

if __name__ == '__main__':
app.run(host='0.0.0.0',debug=True)

我错过了什么吗?有没有一种方法可以测试当代码通过并返回“电子邮件已发送”时出现的问题,但似乎没有发送/接收电子邮件。

感谢您提供的任何帮助!

最佳答案

您似乎没有在 SMTP 端口中阅读。默认情况下,Flask mail 可能会尝试使用 25,而 mailgun 使用 587。

关于python - 将 Flask-Mail 与 Heroku 和 Mailgun 结合使用时,电子邮件无法发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15252150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com