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 = "[email protected]"
MAIL_PASSWORD = "xxxxxxx"
MAIL_DEFAULT_SENDER = "[email protected]"
在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=["[email protected]"], body="这是一条测试邮件")
    mail.send(message)
    return "邮件发送成功"
测试

打开接收者的邮箱

项目地址

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

相关推荐
千千寰宇12 分钟前
[Java/Python] Java 基于命令行调用 Python
python·java se-jdk/jvm
涡能增压发动积21 分钟前
一起来学 Langgraph [第一节]
后端
ruokkk41 分钟前
重启Eureka集群中的节点,对已经注册的服务有什么影响
后端
一线大码1 小时前
项目中怎么确定线程池的大小
java·后端
LNin1 小时前
Spring AI 自定义数据库持久化的ChatMemory
后端
天天摸鱼的java工程师1 小时前
从被测试小姐姐追着怼到运维小哥点赞:我在项目管理系统的 MySQL 优化实战
java·后端·mysql
yvestine1 小时前
自然语言处理——文本表示
人工智能·python·算法·自然语言处理·文本表示
专注VB编程开发20年1 小时前
asp.net mvc如何简化控制器逻辑
后端·asp.net·mvc
zzc9211 小时前
MATLAB仿真生成无线通信网络拓扑推理数据集
开发语言·网络·数据库·人工智能·python·深度学习·matlab