Go to file
2025-04-10 16:15:25 +08:00
.venv first commit 2025-04-09 00:07:27 +08:00
app update 2025-04-10 16:15:25 +08:00
.gitignore 完成数据库等相关。 2025-04-09 10:49:02 +08:00
Dockerfile update 2025-04-09 13:49:03 +08:00
init_db.py 完成数据库等相关。 2025-04-09 10:49:02 +08:00
README.md 完成数据库等相关。 2025-04-09 10:49:02 +08:00
requirements.txt update 2025-04-10 11:38:15 +08:00
start.sh 完成数据库等相关。 2025-04-09 10:49:02 +08:00

美搭 (Meida) API 服务

一个基于FastAPI构建的API服务项目。

项目结构

meida-api/
├── app/                    # 应用目录
│   ├── api/                # API相关模块
│   │   └── v1/             # API版本1
│   ├── core/               # 核心配置
│   ├── db/                 # 数据库相关
│   ├── models/             # 数据模型
│   │   └── users.py        # 用户模型
│   ├── schemas/            # 数据验证模式
│   │   └── user.py         # 用户数据模式
│   └── services/           # 业务服务层
│       └── user.py         # 用户服务
├── main.py                 # 应用入口
├── init_db.py              # 数据库初始化脚本
└── requirements.txt        # 项目依赖

安装与运行

  1. 创建虚拟环境 (推荐)
python -m venv venv
source venv/bin/activate  # Linux/Mac
# 或
venv\Scripts\activate     # Windows
  1. 安装依赖
pip install -r requirements.txt
  1. 初始化数据库 (如果需要)
python init_db.py
  1. 运行服务
python main.py

uvicorn main:app --reload
  1. 访问API文档

API端点

基础端点

  • /health - 健康检查

V1 API

  • /api/v1/ - API基本信息
  • /api/v1/products - 获取产品列表
  • /api/v1/products/{product_id} - 获取特定产品详情

用户API

  • /api/v1/users/ - 获取所有用户 (GET) / 创建用户 (POST)
  • /api/v1/users/{user_id} - 获取/更新/删除特定用户
  • /api/v1/users/openid/{openid} - 通过openid获取用户
  • /api/v1/users/me - 获取当前登录用户信息 (需要认证)
  • /api/v1/users/me - 更新当前登录用户信息 (需要认证)

认证API

  • /api/v1/auth/login/wechat - 微信登录/注册

认证

本API使用JWT令牌进行认证。认证流程如下

  1. 调用微信登录接口获取令牌:
POST /api/v1/auth/login/wechat
{
  "code": "微信临时登录凭证"
}
  1. 在需要认证的请求头中添加令牌:
Authorization: Bearer <access_token>

数据模型

用户模型

  • id: 自增长主键
  • openid: 用户唯一标识
  • unionid: 统一标识
  • avatar: 用户头像
  • nickname: 用户昵称
  • create_time: 创建时间