【发布时间】:2021-09-10 07:28:57
【问题描述】:
我有一个用于所有 websocket 路由的自定义类。它看起来像这样:
class Handler:
async def __call__(websocket):
await websocket.accept()
await self.handle_websocket(websocket)
@abc.abstractmethod
async def handle_websocket(websocket):
pass
所以现在我有一个问题:如果我想在 handle_websocket 函数中使用依赖项,我该怎么做?我希望能够做这样的事情:
async def __call__(websocket):
await websocket.accept()
container = get_dependency_injection_container()
# here I need to pass websocket as an argument. Other arguments in handle_websocket function should be injected
await container.call(self.handle_websocket, websocket=websocket)
有什么想法吗?
【问题讨论】:
标签: python dependency-injection fastapi