FastAPI系列 全局依赖项

2021-06-09 14:01

阅读:380

标签:portal   detail   tail   rac   exce   添加   dep   rgb   option   

对于某些应用你可能想在全局应用基础上添加依赖项。这与在路径操作装饰器添加依赖项类似,你可以把它们添加到整个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依赖项将会在所有的路径操作中进行应用。

 

FastAPI系列 全局依赖项

标签:portal   detail   tail   rac   exce   添加   dep   rgb   option   

原文地址:https://www.cnblogs.com/shenjianping/p/14864393.html


评论


亲,登录后才可以留言!