首页 > 解决方案 > 如何抑制 flask_mail 控制台输出

问题描述

我正在使用 flask_mail 连接以通过 gmail 发送电子邮件。但是,控制台正在打印出渲染模板和其他发送/回复的整个 html。

我该如何抑制这个?在https://pythonhosted.org/Flask-Mail/中找不到任何文档

mail = Mail(app).init_app(app)

def send_confirmation_email(email, token):
    link = url_for('confirm_email', token=token, _external=True)
    with app.app_context():
        msg = Message('Confirm Email', sender=app.config["MAIL_USERNAME"], recipients=[email])
        msg.html = render_template('email_confirmation.html', link=link, type_of_action="email confirmation")
    mail.send(msg)

得到:

send: 'ehlo 1.0.0.127.in-addr.arpa\r\n'
reply: b'250-SIZE 35882577\r\n'
reply: b'250-8BITMIME\r\n'
reply: b'250-STARTTLS\r\n'
reply: b'250-ENHANCEDSTATUSCODES\r\n'
reply: b'250-PIPELINING\r\n'
reply: b'250-CHUNKING\r\n'
reply: b'250 SMTPUTF8\r\n'
send: 'STARTTLS\r\n'
reply: b'220 2.0.0 Ready to start TLS\r\n'
reply: retcode (220); Msg: b'2.0.0 Ready to start TLS'
send: 'ehlo 1.0.0.127.in-addr.arpa\r\n'
reply: b'250-SIZE 35882577\r\n'
reply: b'250-8BITMIME\r\n'
reply: b'250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN OAUTHBEARER XOAUTH\r\n'
reply: b'250-ENHANCEDSTATUSCODES\r\n'
reply: b'250-PIPELINING\r\n'
reply: b'250-CHUNKING\r\n'
reply: b'250 SMTPUTF8\r\n'
reply: retcode (250); Msg: b'smtp.gmail.com at your service, 
reply: b'235 2.7.0 Accepted\r\n'
reply: retcode (235); Msg: b'2.7.0 Accepted'
reply: b'250 2.1.0 OK o23sm683400qtf.53 - gsmtp\r\n'
reply: retcode (250); Msg: b'2.1.0 OK o23sm683400qtf.53 - gsmtp'
reply: b'250 2.1.5 OK o23sm683400qtf.53 - gsmtp\r\n'
reply: retcode (250); Msg: b'2.1.5 OK o23sm683400qtf.53 - gsmtp'
send: 'data\r\n'
reply: b'354  Go ahead o23sm683400qtf.53 - gsmtp\r\n'
reply: retcode (354); Msg: b'Go ahead o23sm683400qtf.53 - gsmtp'
data: (354, b'Go ahead o23sm683400qtf.53 - gsmtp')
send: CONTENT TYPE ALL MY HTML FROM RENDER TEMPLATE

标签: flaskflask-mail

解决方案


它实际上在文档中。

MAIL_DEBUG = False


推荐阅读