import asyncio import fastapi from requestvars import g router = fastapi.APIRouter() @router.get("/foo") async def foo_route(q: str = ""): g().blah = q result = await double() return {"result": result} async def double(): await asyncio.sleep(1.0) return g().blah * 2