websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
Есть вебсокет соединение,по которому клиент передаёт файлы.
На сервере происходит обработка файлов с помощью aiofiles.
Также уходят запросы на гугл апи.
Ответ отправляется клиенту.
Однако получаю ошибку - websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
Когда работаю с файлами - ошибка вылетает сразу же. Когда работаю с гугл апи - спустя какое-то время.
Так понимаю, связано с тайм-аутом каким-то?
Traceback
ERROR: Exception in ASGI application
Traceback (most recent call last):
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/websockets/protocol.py", line 827, in transfer_data
message = await self.read_message()
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/websockets/protocol.py", line 895, in read_message
frame = await self.read_data_frame(max_size=self.max_size)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/websockets/protocol.py", line 971, in read_data_frame
frame = await self.read_frame(max_size)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/websockets/protocol.py", line 1047, in read_frame
frame = await Frame.read(
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/websockets/framing.py", line 105, in read
data = await reader(2)
File "/usr/lib/python3.8/asyncio/streams.py", line 721, in readexactly
raise exceptions.IncompleteReadError(incomplete, n)
asyncio.exceptions.IncompleteReadError: 0 bytes read on a total of 2 expected bytes
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/uvicorn/protocols/websockets/websockets_impl.py", line 157, in run_asgi
result = await self.app(self.scope, self.asgi_receive, self.asgi_send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/uvicorn/middleware/proxy_headers.py", line 45, in __call__
return await self.app(scope, receive, send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/fastapi/applications.py", line 199, in __call__
await super().__call__(scope, receive, send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/applications.py", line 111, in __call__
await self.middleware_stack(scope, receive, send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/middleware/errors.py", line 146, in __call__
await self.app(scope, receive, send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/exceptions.py", line 58, in __call__
await self.app(scope, receive, send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/routing.py", line 566, in __call__
await route.handle(scope, receive, send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/routing.py", line 283, in handle
await self.app(scope, receive, send)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/routing.py", line 57, in app
await func(session)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/fastapi/routing.py", line 247, in app
await dependant.call(**values)
File "./src/interfaces/websocket_consumer.py", line 15, in websocket_endpoint
await manager.broadcast(data, websocket)
File "./src/services/helpers/websocket_manager.py", line 47, in broadcast
await websocket.send_text("some text")
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/websockets.py", line 128, in send_text
await self.send({"type": "websocket.send", "text": data})
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/starlette/websockets.py", line 68, in send
await self._send(message)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/uvicorn/protocols/websockets/websockets_impl.py", line 218, in asgi_send
await self.send(data)
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/websockets/protocol.py", line 555, in send
await self.ensure_open()
File "/home/m0nte-cr1st0/.virtualenvs/hypercube/lib/python3.8/site-packages/websockets/protocol.py", line 803, in ensure_open
raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
На беке используется Starlette.