Создание простого WebSocket сервера в Python

Встраивание 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.