配置Flask-Mail以使用GMail

当我尝试使用以下设置通过Flask-Mail将电子邮件发送到Gmail的SMTP服务器时,我得到了[Errno -2] Name or service not known。如何修改我的配置以通过Gmail发送电子邮件?

from flask import Flask, render_template, redirect, url_for

from flask_mail import Mail, Message

app = Flask(__name__)

app.config.update(

MAIL_SERVER='smtp@gmail.com',

MAIL_PORT=587,

MAIL_USE_SSL=True,

MAIL_USERNAME = 'ri******a@gmail.com',

MAIL_PASSWORD = 'Ma*****fe'

)

mail = Mail(app)

@app.route('/send-mail/')

def send_mail():

msg = mail.send_message(

'Send Mail tutorial!',

sender='ri******a@gmail.com',

recipients=['ri*********07@msn.com'],

body="Congratulations you've succeeded!"

)

return 'Mail sent'

回答:

  1. 服务器是“ smtp.gmail.com”。
  2. 端口必须与使用的安全性类型匹配。
  3. 如果将STARTTLS与一起使用MAIL_USE_TLS = True,请使用MAIL_PORT = 587
  4. 如果直接将SSL / TLS与一起使用MAIL_USE_SSL = True,则使用MAIL_PORT = 465
  5. 同时启用STARTTLS或SSL / TLS。
  6. 根据你Google帐户的安全设置,你可能需要生成并使用应用程序密码而不是帐户密码。这可能还需要启用两步验证。无论如何,你可能应该对此进行设置。

MAIL_SERVER = 'smtp.gmail.com'

MAIL_PORT = 465

MAIL_USE_SSL = True

MAIL_USERNAME = 'username@gmail.com'

MAIL_PASSWORD = 'app password generated in step 3'

以上是 配置Flask-Mail以使用GMail 的全部内容, 来源链接: utcz.com/qa/428139.html

回到顶部