79 lines
3.4 KiB
Plaintext
79 lines
3.4 KiB
Plaintext
# =============================================================================
|
||
# 企微IT智能服务台 — Python 依赖声明
|
||
# =============================================================================
|
||
# 说明:列出后端所有 Python 包依赖及版本
|
||
# 用法:pip install -r requirements.txt
|
||
# =============================================================================
|
||
|
||
# --------------------------------------------------------------------------
|
||
# Web 框架
|
||
# --------------------------------------------------------------------------
|
||
# FastAPI: 高性能异步 Web 框架,自动生成 Swagger API 文档
|
||
fastapi==0.111.0
|
||
# Uvicorn: ASGI 服务器,支持热重载和 WebSocket
|
||
uvicorn[standard]==0.30.1
|
||
# python-multipart: FastAPI 文件上传支持(处理 multipart/form-data 请求)
|
||
python-multipart==0.0.9
|
||
|
||
# --------------------------------------------------------------------------
|
||
# 数据库
|
||
# --------------------------------------------------------------------------
|
||
# SQLAlchemy: Python SQL 工具包和 ORM,2.0 版本支持 async session
|
||
sqlalchemy==2.0.31
|
||
# psycopg2-binary: PostgreSQL 数据库驱动(binary 版本无需编译,用于 Alembic 同步迁移)
|
||
psycopg2-binary==2.9.9
|
||
# asyncpg: PostgreSQL 异步驱动(用于 SQLAlchemy 2.0 async engine)
|
||
asyncpg==0.29.0
|
||
# Alembic: 数据库迁移工具,与 SQLAlchemy 配合使用
|
||
alembic==1.13.1
|
||
|
||
# --------------------------------------------------------------------------
|
||
# 缓存
|
||
# --------------------------------------------------------------------------
|
||
# redis: Redis 客户端,用于 access_token 缓存和会话状态管理
|
||
redis==5.0.7
|
||
|
||
# --------------------------------------------------------------------------
|
||
# 数据验证
|
||
# --------------------------------------------------------------------------
|
||
# pydantic: 数据验证和设置管理,FastAPI 的核心依赖
|
||
pydantic==2.7.4
|
||
# pydantic-settings: 从环境变量读取配置,支持 .env 文件
|
||
pydantic-settings==2.3.4
|
||
|
||
# --------------------------------------------------------------------------
|
||
# HTTP 客户端
|
||
# --------------------------------------------------------------------------
|
||
# httpx: 异步 HTTP 客户端,用于调用企微 API(替代同步的 requests)
|
||
httpx==0.27.0
|
||
|
||
# --------------------------------------------------------------------------
|
||
# 加密
|
||
# --------------------------------------------------------------------------
|
||
# cryptography: 企微消息 AES-CBC-256 加解密(官方推荐库)
|
||
cryptography==42.0.8
|
||
|
||
# --------------------------------------------------------------------------
|
||
# 速率限制
|
||
# --------------------------------------------------------------------------
|
||
# slowapi: FastAPI 速率限制中间件(基于 limits 库,支持 Redis 后端)
|
||
slowapi==0.1.9
|
||
|
||
# --------------------------------------------------------------------------
|
||
# 工具
|
||
# --------------------------------------------------------------------------
|
||
# python-dotenv: 从 .env 文件加载环境变量到 os.environ
|
||
python-dotenv==1.0.1
|
||
|
||
# --------------------------------------------------------------------------
|
||
# OTP 二次验证
|
||
# --------------------------------------------------------------------------
|
||
# pyotp: TOTP/HOTP 动态码生成和验证(Google Authenticator 兼容)
|
||
pyotp==2.9.0
|
||
# bcrypt: 密码哈希库(用于本地密码认证)
|
||
bcrypt==4.1.2
|
||
# qrcode: 二维码生成(用于 OTP 绑定)
|
||
qrcode[pil]==7.4.2
|
||
# pillow: 图片处理(qrcode[pil] 依赖)
|
||
pillow==10.4.0
|