flask发送邮件

开通邮件IMAP/SMTP服务

以网易邮箱为例

点击开启发送验证后会收到一个密钥,记得保存好

编写代码

安装flask-mail
powershell 复制代码
pip install flask-mail
在config.py文件中配置邮件信息

MAIL_SERVER:邮件服务器

MAIL_USE_SSL:使用SSL

MAIL_PORT:端口

MAIL_USERNAME:用户名

MAIL_PASSWORD:上面获得的密钥

MAIL_DEFAULT_SENDER:默认的发送者

python 复制代码
#邮箱配置
MAIL_SERVER = "smtp.163.com"
MAIL_USE_SSL = True
MAIL_PORT = 465
MAIL_USERNAME = "188xxxx5@163.com"
MAIL_PASSWORD = "xxxxxxx"
MAIL_DEFAULT_SENDER = "18xxxxxxx@163.com"
在exts.py创建mail对象
python 复制代码
# 这个文件的目的是为了解决循环引用
from flask_mail import Mail

mail = Mail()
在app.py初始化mail
python 复制代码
from flask import Flask
import config
from exts import mail
from blueprints.auth import bp as auth_bp

app = Flask(__name__)
app.config.from_object(config)
mail.init_app(app)
app.register_blueprint(auth_bp)



if __name__ == '__main__':
    app.run()
在蓝图下的auth.py文件中编写路由

subject:邮件标题

recipients:接收者

body:邮件内容

python 复制代码
from flask import Blueprint
from exts import mail
from flask_mail import Message

bp = Blueprint("auth", __name__, url_prefix="/auth")



@bp.route("/mail/test")
def mail_test():
    message = Message(subject="邮箱测试", recipients=["258xxxxxx9@qq.com"], body="这是一条测试邮件")
    mail.send(message)
    return "邮件发送成功"
测试

打开接收者的邮箱

项目地址

https://gitee.com/yohoo-just-play/liu_oa/

相关推荐
2401_835956813 分钟前
如何处理SQL查询中的逻辑重叠:AND OR嵌套优先级
jvm·数据库·python
2301_796588504 分钟前
Redis怎样优化大量Lua并发调用带来的CPU压力
jvm·数据库·python
张小洛5 分钟前
Spring 常用类深度剖析(工具篇 04):CollectionUtils 与 Stream API 的对比与融合
java·后端·spring·spring工具类·spring utils·spring 类解析
l1t5 分钟前
利用python statsmodels包分析数据
开发语言·python
2301_796588507 分钟前
如何阻止 HTML 页面在 JavaScript 脚本执行完成前渲染
jvm·数据库·python
DeepModel8 分钟前
通俗易懂讲透 EM 算法(期望最大化)
人工智能·python·算法·机器学习
海海不掉头发10 分钟前
【AI大模型实战项目】大模型入门实战:两个落地项目保姆级教程12月14日-【项目】基于知识库RAG的物流行业信息问答系统
人工智能·python·深度学习·语言模型·自然语言处理·pycharm·scikit-learn
2301_7735536210 分钟前
mysql执行SQL查询时结果不一致_检查事务隔离级别设置与幻读
jvm·数据库·python
m0_3776182312 分钟前
mysql如何解决乱码问题_检查客户端与服务器字符集一致性
jvm·数据库·python
m0_7478545213 分钟前
html怎么转astro island模式_Astro Islands如何隔离HTML组件
jvm·数据库·python