在FastAPI中实现API版本控制可以通过在路由路径中添加版本信息来实现。以下是一种实现方式:
from fastapi import FastAPI
app = FastAPI()
@app.get("/v1/items/")
async def read_items_v1():
return {"version": "v1", "items": ["item1", "item2"]}
@app.get("/v2/items/")
async def read_items_v2():
return {"version": "v2", "items": ["item1", "item2", "item3"]}
在上面的例子中,我们定义了两个不同版本的API端点,分别是/v1/items/
和/v2/items/
。当用户请求/v1/items/
时,将返回版本1的数据;当用户请求/v2/items/
时,将返回版本2的数据。
这种方式简单并且直观,但在实际开发中可能会导致路由路径过多,可以考虑使用路径参数或者自定义的路径验证器来更灵活地管理不同版本的API。