flask发送邮件问题(yeah.net与Gmail设置的不同)

在利用flask发送注册确认邮件时,在《flask web实战》里面是用Gmail,因为是在国内如果用Gmail不稳定,故选用国内的邮件,选择国内的邮件发送发现一直不能够发送成功。

最后在排除原因时发现是协议的问题,教程里面TLS协议定义为True,我把TSL协议改为False,再应用ssl协议就可以发送成功。

配置 Flask-Mail 使用 Gmail
import os
# ...
app.config['MAIL_SERVER'] = 'smtp.googlemail.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True                                                         #这里教程是开启了TLS协议
app.config['MAIL_USERNAME'] = os.environ.get('MAIL_USERNAME')
app.config['MAIL_PASSWORD'] = os.environ.get('MAIL_PASSWORD')

yeah.net网易免费邮的配置

app.config['MAIL_SERVER'] = 'smtp.yeah.net'
app.config['MAIL_PORT'] = 465
app.config['MAIL_USE_SSL'] = True                                                          #这里教程是开启了SSL协议
app.config['MAIL_USERNAME'] = os.environ.get('MAIL_USERNAME')
app.config['MAIL_PASSWORD'] = os.environ.get('MAIL_PASSWORD')

国内的其他邮箱配置大约与yeah.net相同,值得注意的是,邮箱需要去配置开启STMP功能并且在邮箱里面设置代理密码,上面填写密码的时候应该填写代理密码而不是邮箱正常的登陆密码,这一点也是跟Gmail不同的一点。

你可能感兴趣的:(flask发送邮件问题(yeah.net与Gmail设置的不同))