flask_mail发送163邮件,报553错误的原因

时间:2023-03-08 21:17:20
flask_mail发送163邮件,报553错误的原因

最近在练习用flask_mail发送163邮件时报错:

reply: '553 authentication is required,163 smtp9,DcCowAD3eEQZ561caRiaBA--.47S2 1554900770\r\n'
reply: retcode (553); Msg: authentication is required,163 smtp9,DcCowAD3eEQZ561caRiaBA--.47S2 1554900770

找原因用了1天时间~~

最后发现是设置app.config[]信息时,代码中把app.config['MAIL_USERNAME']=...,写成了app.config['MAIL_USEERNAME'],中间多了个E

开始时没有注意这个,注意力放在了163邮箱的SSL协议的端口上了。。。

其实一般报553错误,都是因为用户名密码或者端口的原因

另外163邮箱的SSL协议和TLS协议的端口如下:

flask_mail发送163邮件,报553错误的原因

网上说TLS协议用不了,我就试了SSL,的端口465,是可以的

另外网上说QQ邮箱因为25端口被封了,所以目前没搞QQ邮箱

app.config.update(
SECRET_KEY = "SECRET KEY",
MAIL_SERVER = os.getenv('MAIL_SERVER'),
MAIL_PORT = 465,
#MAIL_PORT = 587,
#MAIL_USE_TLS = True,
MAIL_USE_SSL = True,
MAIL_USERNAME = os.getenv('MAIL_USERNAME'),
MAIL_PASSWORD = os.getenv('MAIL_PASSWORD'),
MAIL_DEFAULT_SENDER = (os.getenv('MAIL_USERNAME'))
)