FastAPI依赖注入系统系列(五) 全局依赖项
对于某些应用你可能想在全局应用基础上添加依赖项。这与在路径操作装饰器添加依赖项类似,你可以把它们添加到整个FastAPI应用上。
这样,这些依赖项将会应用到所有的路径操作上。
from typing import Optional from fastapi import FastAPI, Depends, HTTPException def query_extractor(q: Optional[str] = None): if not q: raise HTTPException(status_code=400, detail="q is not null") app = FastAPI(dependencies=[Depends(query_extractor)]) @app.get("/items/") async def read_items(): return [{"item": "Portal Gun"}, {"item": "Plumbus"}] @app.get("/users/") async def read_users(): return [{"username": "Rick"}, {"username": "Morty"}]
这样query_extractor依赖项将会在所有的路径操作中进行应用。
作者:iveBoy
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。