Skip to content

CWJ-CCode/litestar-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Litestar Template

基于 Litestar 框架的 Python 后端 API 模板,采用分层架构设计。

技术栈

  • Litestar - 现代 ASGI Web 框架
  • SQLAlchemy - 异步 ORM (配合 advanced-alchemy)
  • msgspec - 高性能数据验证和序列化
  • JWT - 基于 Token 的身份认证
  • Uvicorn - ASGI 服务器

快速开始

安装依赖

pip install litestar uvicorn advanced-alchemy aiosqlite msgspec bcrypt

运行

python run.py

服务将启动在 http://localhost:8000

环境变量

变量 说明 默认值
DEBUG 调试模式 false
HOST 服务地址 0.0.0.0
PORT 服务端口 8000
DATABASE_URL 数据库连接 sqlite+aiosqlite:///./do.db
JWT_SECRET JWT 密钥 change-me-in-production

API 接口

方法 路径 说明 认证
GET / 欢迎信息
GET /health 健康检查
POST /auth/register 用户注册
POST /auth/login 用户登录
POST /auth/refresh 刷新 Token
GET /auth/me 当前用户信息
GET /schema OpenAPI 文档

示例请求

注册

curl -X POST http://localhost:8000/auth/register \
  -H "Content-Type: application/json" \
  -d '{"username": "user1", "password": "password123"}'

登录

curl -X POST http://localhost:8000/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username": "user1", "password": "password123"}'

获取当前用户

curl http://localhost:8000/auth/me \
  -H "Authorization: Bearer <access_token>"

项目结构

app/
├── main.py              # 应用入口
├── config.py            # 配置
├── controllers/         # 路由处理器
├── services/            # 业务逻辑
├── repositories/        # 数据访问
├── models/              # ORM 模型
├── schemas/             # 请求/响应结构
├── dependencies/        # 依赖注入
├── exceptions/          # 自定义异常
├── middleware/          # 中间件
└── utils/               # 工具函数

License

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages