如何解决如何访问自定义APIRoute类中的路由依赖关系?
我想从自定义APIRoute类访问路由级依赖项(cache
)。该API是使用路由器和自定义APIRoute类定义的。
APIRoute类
from typing import Callable
from fastapi import Request,Response,Depends
from fastapi.routing import APIRoute
class RecordRequestResponseRoute(APIRoute):
def get_route_handler(self) -> Callable:
original_route_handler = super().get_route_handler()
async def custom_route_handler(request: Request) -> Response:
# need to access cache here
response: Response = await original_route_handler(request)
return response
return custom_route_handler
路由器API
from fastapi import Response,Depends,APIRouter,BackgroundTasks
import fastapi_plugins
import aioredis
router = APIRouter(route_class=RecordRequestResponseRoute)
@router.get("/users",tags=["users"])
async def match_frame(background_tasks: BackgroundTasks,cache: aioredis.Redis = Depends(fastapi_plugins.depends_redis)):
return {"success": True,"data": []}
我需要访问RecordRequestResponseRoute类中的cache
。我尝试使用子依赖项,但这没有帮助。正确的方法是什么?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。