2.6 KiB
2.6 KiB
爱设计后端 API
基于 FastAPI 的付费下载平台后端
功能特性
- ✅ 用户注册/登录(JWT认证)
- ✅ 作品浏览/搜索
- ✅ 付费下载(易收米支付)
- ✅ 图片水印处理
- ✅ 缩略图生成
- ✅ 订单管理
- ✅ 支付回调处理
- ✅ 订单状态查询
- ✅ Docker 容器化部署
快速开始
1. 使用 Docker Compose(推荐)
# 启动所有服务
docker-compose up -d
# 查看日志
docker-compose logs -f
# 停止服务
docker-compose down
2. 本地开发
# 安装依赖
pip install -r requirements.txt
# 复制环境变量文件
cp .env.example .env
# 修改 .env 中的配置
# 启动服务
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
API 文档
启动后访问:
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
目录结构
backend/
├── app/
│ ├── api/ # API 路由
│ ├── core/ # 核心配置
│ ├── models/ # 数据库模型
│ ├── schemas/ # Pydantic 模型
│ ├── services/ # 业务逻辑
│ ├── utils/ # 工具函数
│ └── main.py # 入口文件
├── uploads/ # 文件上传目录
│ ├── original/ # 原图(高清)
│ ├── watermarked/ # 带水印图
│ └── thumbnail/ # 缩略图
├── requirements.txt
├── Dockerfile
└── docker-compose.yml
环境变量
查看 .env.example 文件了解所有配置项
部署到生产环境
使用 Caddy
在服务器上创建 Caddyfile:
api.aishej.com {
reverse_proxy localhost:8000
}
然后启动 Caddy:
caddy start
接口列表
认证
- POST
/api/auth/register- 用户注册 - POST
/api/auth/login- 用户登录
作品
- GET
/api/works- 作品列表 - GET
/api/works/{id}- 作品详情
订单
- POST
/api/orders/create- 创建订单 - POST
/api/orders/pay/{id}- 支付订单(模拟支付,仅测试用) - GET
/api/orders/my- 我的订单
支付(易收米)
- POST
/api/payment/create/{order_id}- 创建支付链接(真实支付) - POST
/api/payment/notify- 支付回调接口(易收米异步通知) - GET
/api/payment/query/{order_number}- 查询订单支付状态 - POST
/api/payment/cancel/{order_id}- 取消订单
后续开发
- 接入真实支付接口(支付宝/微信)
- 作品上传管理
- 管理后台
- 数据统计
- Redis 缓存
- 日志系统
License
MIT