Python: FastAPI: Add support for APIRouter

This commit is contained in:
Rasmus Wriedt Larsen
2021-09-22 14:37:22 +02:00
parent b1f8b5352b
commit 285de2b4c8
3 changed files with 47 additions and 1 deletions

View File

@@ -60,7 +60,6 @@ async def get_baz(baz_id: int): # $ requestHandler routedParameter=baz_id
# see https://fastapi.tiangolo.com/tutorial/path-params/
# More stuff that we should support:
# - https://fastapi.tiangolo.com/tutorial/bigger-applications/
# - https://fastapi.tiangolo.com/advanced/response-cookies/
# - https://fastapi.tiangolo.com/tutorial/dependencies/
# - Extra taint-steps for files

View File

@@ -0,0 +1,33 @@
# like blueprints in Flask
# see https://fastapi.tiangolo.com/tutorial/bigger-applications/
from fastapi import APIRouter, FastAPI
inner_router = APIRouter()
@inner_router.get("/foo") # $ routeSetup="/foo"
async def root(): # $ requestHandler
return {"msg": "inner_router /foo"} # $ HttpResponse
outer_router = APIRouter()
outer_router.include_router(inner_router, prefix="/inner")
items_router = APIRouter(
prefix="/items",
tags=["items"],
)
@items_router.get("/") # $ routeSetup="/"
async def items(): # $ requestHandler
return {"msg": "items_router /"} # $ HttpResponse
app = FastAPI()
app.include_router(outer_router, prefix="/outer")
app.include_router(items_router)
# see basic.py for instructions for how to run this code.