Встраивание WebSocket сервера Python позволяет установить непрерывный и двунаправленный канал связи между сервером и клиентами. Ниже приведено подробное руководство, объясняющее каждый компонент для создания базового WebSocket сервера с использованием websockets
библиотеки.
Шаг 1: Установите WebSocket библиотеку
Для начала вам нужно установить websockets
библиотеку, выполнив следующую команду в папке terminal:
pip install websockets
Шаг 2: Создание WebSocket сервера
Вот пример того, как построить WebSocket сервер в Python:
import asyncio
import websockets
# WebSocket connection handling function
async def handle_connection(websocket, path):
async for message in websocket:
# Process the data and send a response
response = f"Server received: {message}"
await websocket.send(response)
# Initialize the WebSocket server
start_server = websockets.serve(handle_connection, "localhost", 8765)
# Run the server within the event loop
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()
Во фрагменте кода:
-
async def handle_connection(websocket, path):
: эта функция обрабатывает WebSocket соединения. Каждый раз, когда клиент подключается, эта функция вызывается для управления связью. -
async for message in websocket:
: этот цикл повторяется для прослушивания сообщений от клиента через соединение WebSocket. -
await websocket.send(response)
: Эта функция отправляет ответ от сервера обратно клиенту через соединение WebSocket. -
websockets.serve(handle_connection, "localhost", 8765)
: Эта функция создает WebSocket сервер, который прослушивает соединения поlocalhost
адресу и порту8765
.
Шаг 3: Тестирование сервера
После развертывания кода сервера он будет прослушивать соединения от клиентов через порт 8765. Вы можете протестировать сервер, подключившись к нему с помощью WebSocket клиентского кода или онлайн-инструментов тестирования.
Заключение
Выполнив эти шаги, вы успешно создали простой WebSocket сервер в Python. Этот сервер обеспечивает основу для создания приложений реального времени и взаимодействия между сервером и клиентами с использованием протокола WebSocket.