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/

相关推荐
用户956256254291 分钟前
15 分钟社媒简报 Agent:我只用了搜索和模型两步
python·api
xjz18423 分钟前
Rust 运算符优先级:括号不只用来改变顺序
后端
写码跑山的老艾3 分钟前
为什么有了 MySQL,还要 Redis 和 Elasticsearch?从一件商品看数据系统的权衡
后端
Dumbness4 分钟前
关键词回复里写了 {订单号},群机器人整条消息都炸了
python·微信
调接口的阿光5 分钟前
调用对话接口时输出被截断怎么办:先看 finish_reason,再决定是续写一次、缩小范围,还是换成更短的格式(Python)
人工智能·python
对象存储与RustFS9 分钟前
Jenkins 的构建产物别堆在控制器磁盘:用 RustFS 当它的 S3 工件仓库
后端·docker·云原生
王中阳Go10 分钟前
100 件货卖出 116 件,库存停在 -16
后端·mysql·go
泡海椒11 分钟前
jquick-pdf 多重折线(JMultiLineChartData)实战:Java 生成工单 SLA 月报
后端
Swot13 分钟前
SvelteKit Remote Functions 使用指南
前端·后端
Cooper2517 分钟前
单文件 Flask 跑通微信服务器校验:先跑通再谈工程化
python·flask