mirror of
https://github.com/fastapi-practices/fastapi-best-architecture.git
synced 2026-09-21 05:02:49 +00:00
电子邮件插件,提供邮件发送功能,支持验证码、通知等场景
- 支持 SMTP 邮件发送
- 支持验证码、通知等邮件场景
- 支持按基础配置控制邮箱服务、验证码有效期和 Redis 前缀
插件类型
- 应用级插件
配置说明
在 backend/.env 中添加以下内容:
# [ Plugin ] email
EMAIL_USERNAME=''
EMAIL_PASSWORD=''
插件目录下 plugin.toml 的 [settings] 中包含以下内容:
[settings]
EMAIL_CAPTCHA_EXPIRE_SECONDS = 180
EMAIL_CAPTCHA_REDIS_PREFIX = 'fba:email:captcha'
EMAIL_HOST = 'smtp.qq.com'
EMAIL_PORT = 465
EMAIL_SSL = true
在 backend/core/conf.py 中添加以下内容:
##################################################
# [ Plugin ] email
##################################################
# .env
EMAIL_USERNAME: str
EMAIL_PASSWORD: str
# 基础配置(in plugin.toml)
EMAIL_HOST: str
EMAIL_PORT: int
EMAIL_SSL: bool
EMAIL_CAPTCHA_REDIS_PREFIX: str
EMAIL_CAPTCHA_EXPIRE_SECONDS: int
使用方式
- 安装并启用插件后,配置正确的 SMTP 账号与密码
- 根据实际邮箱服务商修改
EMAIL_HOST、EMAIL_PORT、EMAIL_SSL - 重启后端服务后,通过系统页面、Swagger 或业务代码使用邮件能力
卸载说明
- 卸载插件后,建议同步移除相关环境变量、插件基础配置和
backend/core/conf.py中的插件配置 - 如业务代码仍在使用邮件发送能力,请同步清理对应集成
联系方式
- 作者:
wu-clan - 反馈方式:提交 Issue 或 PR