python fastapi使用、uvicorn

文章目录

比flask性能高不少,是未来的趋势,应该了解下。

项目依赖:

python 复制代码
pip install fastapi uvicorn

示例

1、用已有的pycharm项目就行,项目下创建app文件夹,app下创建api文件夹,app下创建main.py,代码:

python 复制代码
from fastapi import FastAPI
from app.api import users, items  # 导入路由模块

# 1. 创建唯一的 FastAPI 应用实例
app = FastAPI(title="我的多文件应用")

# 2. 将各个模块的路由器注册到主应用上
# 这样,users 和 items 的路由就"复用"了同一个 app 实例
app.include_router(users.router)
app.include_router(items.router)

# 你也可以在这里定义一些全局的路由
@app.get("/")
def read_root():
    return {"message": "欢迎访问主应用!"}

2、api下创建users.py,代码:

python 复制代码
from fastapi import APIRouter

# 为这个模块创建一个独立的路由器
router = APIRouter(prefix="/users", tags=["用户管理"])

@router.get("/")
def get_users():
    return [{"id": 1, "name": "Alice"}, {"id": 2, "name": "Bob"}]

@router.get("/{user_id}")
def get_user(user_id: int):
    return {"id": user_id, "name": f"User {user_id}"}

3、api下创建items.py,代码:

python 复制代码
from fastapi import APIRouter

# 为这个模块创建另一个独立的路由器
router = APIRouter(prefix="/items", tags=["商品管理"])

@router.get("/")
def get_items():
    return [{"id": 101, "name": "Laptop"}]

4、uvicorn命令启动项目

bash 复制代码
uvicorn app.main:app --port 8000 --reload

5、浏览器验证(postman也可以)
http://localhost:8000/users/ # 列表
http://localhost:8000/users/2 # 查看id为2的用户信息

相关推荐
OKkankan1 小时前
LangChain 能力详解!:输出解析、RAG、向量数据库与 Retriever 检索器
数据结构·python·langchain·ai应用
白远山1 小时前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析
山哥ol2 小时前
【Geany 环境配置与中文乱码解决参考】
python
DevRay2 小时前
Java 21虚拟线程深度实战:告别线程池焦虑,百万并发吞吐量直接翻倍(原理+代码+避坑)
java·开发语言
CSharp精选营2 小时前
Ubuntu 22.04 Docker 从零部署全栈项目实录:Next.js + FastAPI + PostgreSQL 一次跑通
fastapi·nextjs·docker部署·全栈开发·ubuntu22.04
free-elcmacom2 小时前
C++学习<1>程序分区
开发语言·c++
会飞锦鲤2 小时前
基于 Mask R-CNN 的药片缺陷检测系统
人工智能·pytorch·python·神经网络·resnet-50
醉颜凉2 小时前
Java 必看:如何彻底避免 HashMap 多线程死循环问题?
java·开发语言
默 语2 小时前
Java新手入门:从零开始安装JDK并配置环境变量
java·开发语言·python·mysql·group by·1024程序员节·数据去重
Brilliantwxx2 小时前
【STM32】 I2C_EEPROM_test 工程(实战篇)
开发语言·stm32·单片机·嵌入式硬件·ecmascript