码迷,mamicode.com
首页 > 其他好文 > 详细

一百零五:CMS系统之flask-mail使用和邮箱配置、发送邮件功能

时间:2019-11-24 00:01:47      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:console   默认   eve   邮箱   username   default   com   range   OLE   

 

安装:pip install flask-mail

官方文档:https://pythonhosted.org/Flask-Mail/

 

邮箱配置

技术图片

MAIL_SERVER = ‘smtp.qq.com‘  # 邮箱服务器地址
MAIL_PORT = 465 # 端口
MAIL_USE_TLS = True # 使用tls协议
MAIL_USERNAME = ‘1460@qq.com‘ # 邮箱
MAIL_PASSWORD = ‘llahhie‘ # 邮箱授权码
MAIL_DEFAULT_SENDER = ‘14609@qq.com‘ # 默认发送者

技术图片

from flask_sqlalchemy import SQLAlchemy
from flask_mail import Mail
db = SQLAlchemy()
mail = Mail()

技术图片

发一封邮件测试一下

技术图片

技术图片

 

完成发送邮件功能

js

技术图片

$(function () {
$(‘#captcha-btn‘).click(function (event) {
event.preventDefault();
var email = $(‘input[name="email"]‘).val();
console.log(email);
if(!email){
xtalert.alertInfoToast(‘请输入邮箱‘);
return;
}
http.get({
‘url‘: ‘/cms/email_captcha/‘,
‘data‘: {
‘email‘: email
},
‘success‘: function (data) {
if(data[‘code‘] == 200){
xtalert.alertSuccessToast(‘邮件发送成功,请注意查收‘);
}else{
xtalert.alertInfo(data[‘message‘]);
}
},
‘fail‘: function (error) {
xtalert.alertNetworkError();
}
});
});
});

引用

技术图片

视图

技术图片

@bp.route(‘/email_captcha/‘)
def email_captcha():
email = request.args.get(‘email‘)
if not email:
return restful.params_error(‘邮箱必填‘)
# 验证码
source = list(string.ascii_letters) # [‘a-z‘,‘A-Z‘]
source.extend(map(lambda x: str(x), range(0, 10))) # [‘a-z‘,‘A-Z‘, ‘0-9‘]
captcha = ‘‘.join(random.sample(source, 6)) # 把随机取的6位列表转字符串当验证码
message = Message(‘CMS验证码‘, recipients=[email], body=f‘验证码为:{captcha}‘)
try:
mail.send(message)
except:
return restful.server_error()
return restful.success()

触发

技术图片

技术图片

 

一百零五:CMS系统之flask-mail使用和邮箱配置、发送邮件功能

标签:console   默认   eve   邮箱   username   default   com   range   OLE   

原文地址:https://www.cnblogs.com/zhongyehai/p/11920718.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!