Работал ли с WebSocket
Python
Junior
Без компании
Работал ли с WebSocket
Ответы
Да, работал. WebSocket — это протокол для двустороннего обмена сообщениями между клиентом и сервером через одно соединение. В Python для работы с WebSocket часто используют библиотеки `websockets` (асинхронная) и `socket.io` (для совместимости с JS).
Пример простого WebSocket-сервера на `websockets`:
```
import asyncio
import websockets
async def handler(websocket):
async for message in websocket:
print(f"Получено: {message}")
await websocket.send(f"Эхо: {message}")
async def main():
async with websockets.serve(handler, "localhost", 8765):
await asyncio.Future() # Бесконечное выполнение
asyncio.run(main())
```
Клиентский код (JS):
```
const ws = new WebSocket("ws://localhost:8765");
ws.onmessage = (event) => console.log(event.data);
ws.send("Привет, WebSocket!");
```
**Ключевые моменты:**
- Поддержка асинхронности (важно для производительности).
- Обработка ошибок (например, разрыв соединения).
- Возможность интеграции с Django/Flask через `channels` или `Flask-SocketIO`.