fastapi-auth-template — JWT 认证模板

此代码库包含完整的用户认证系统:注册、登录、JWT token、密码加密、权限控制。

已创建的文件

  • app/config.py --- 配置管理
  • app/database.py --- 数据库连接
  • app/models.py --- 用户模型
  • app/auth.py --- JWT 和密码工具
  • app/schemas.py --- 数据验证模型
  • app/dependencies.py --- 依赖注入(get_current_user)
  • app/main.py --- 主应用和所有路由
  • requirements.txt --- 依赖清单
  • .env.example --- 配置示例
  • README.md --- 完整使用说明

使用方式:

  1. 安装 Python(如果还没装)

下载:https://www.python.org/downloads/

  1. 进入项目目录

cd fastapi-auth-template

  1. 安装依赖

pip install -r requirements.txt

  1. 复制配置文件并修改 SECRET_KEY

cp .env.example .env

  1. 启动服务

uvicorn app.main:app --reload

  1. 访问 API 文档

http://localhost:8000/docs

核心功能

  • 注册:POST /auth/register
  • 登录:POST /auth/login → 返回 JWT token
  • 获取当前用户:GET /users/me(需要 Authorization: Bearer token)
  • 管理员接口:用户列表、启用/禁用、设置管理员权限

代码可以直接用于新项目,也可以作为学习参考。README 里有详细的 API 文档和使用示例。

API 接口:

  • POST /auth/register - 用户注册
  • POST /auth/login - 登录获取 JWT token
  • GET /users/me - 获取当前用户(需认证)
  • PUT /users/me - 更新用户信息(需认证)
  • GET /users/ - 用户列表(管理员)
  • POST /users/{id}/toggle-active - 启用/禁用用户(管理员)
  • POST /users/{id}/toggle-superuser - 设置管理员(管理员)

有需要的小伙伴可私信博主下载

相关推荐
不会就选b1 小时前
Linux之网络基础(二)
linux·运维·网络
莫浅子2 小时前
Day 4:USB 2.0 时序与带宽预算
linux·运维·网络
ly76892 小时前
Linux 从入门到实践:系统架构、常用命令、服务管理与故障排查详解
linux·运维·系统架构
XUEYUAN52122 小时前
Cloudflare 防护机制深度剖析与跨境数据采集工程化实践
服务器·网络·网络协议·tcp/ip·http
青瓦梦滋3 小时前
IP/MAC帧/ARP协议
运维·服务器·网络·网络协议·tcp/ip
阿 才4 小时前
Matlab(Simulink)使用详解
运维·网络·matlab
刘新洲4 小时前
我以为 AI Agent 只是调模型,直到我亲手补上审批、Outbox 和故障恢复
python·agent·fastapi
St_rive4 小时前
webUI自动化实现及封装
运维·自动化
xx~t4 小时前
嵌入式——Linux软件编程2
linux·运维·服务器·c语言·学习方法