Изменения вебсокета

This commit is contained in:
urec56 2024-06-05 19:53:57 +05:00
parent b8c77bfae7
commit c945b8a904
2 changed files with 7 additions and 11 deletions

View file

@ -1,8 +1,7 @@
import logging
from typing import Annotated
import websockets
from fastapi import WebSocket, WebSocketDisconnect, Depends, Header
from fastapi import WebSocket, WebSocketDisconnect, Depends
from app.exceptions import IncorrectDataException, UserDontHavePermissionException
from app.services.message_service import MessageService
@ -136,15 +135,12 @@ manager = ConnectionManager()
async def websocket_endpoint(
chat_id: int,
websocket: WebSocket,
sec_websocket_protocol: Annotated[str | None, Header()] = None,
# user: SUser = Depends(get_current_user_ws),
user: SUser = Depends(get_current_user_ws),
uow=Depends(UnitOfWork)
):
# await AuthService.check_verificated_user_with_exc(uow=uow, user_id=user.id)
# await AuthService.validate_user_access_to_chat(uow=uow, user_id=user.id, chat_id=chat_id)
await AuthService.check_verificated_user_with_exc(uow=uow, user_id=user.id)
await AuthService.validate_user_access_to_chat(uow=uow, user_id=user.id, chat_id=chat_id)
await manager.connect(chat_id, websocket)
logging.critical(sec_websocket_protocol)
await websocket.send_json({"headers": str(websocket.headers), "authorization": sec_websocket_protocol})
try:
while True:
data = await websocket.receive_json()

View file

@ -50,10 +50,10 @@ async def check_verificated_user_with_exc(user: SUser = Depends(get_current_user
return user
def get_token_ws(authorization: Annotated[str | None, Header()] = None) -> str:
if authorization is None:
def get_token_ws(sec_websocket_protocol: Annotated[str | None, Header()] = None,) -> str:
if sec_websocket_protocol is None:
raise TokenAbsentException
return authorization.split()[1]
return sec_websocket_protocol.split()[1]
async def get_current_user_ws(token: str = Depends(get_token_ws), uow=Depends(UnitOfWork)):