Izgradnja jednostavnog WebSocket poslužitelja Python

Ugradnja WebSocket poslužitelja Python omogućuje vam uspostavljanje kontinuiranog i dvosmjernog komunikacijskog kanala između poslužitelja i klijenata. Ispod je detaljan vodič koji objašnjava svaku komponentu za izradu osnovnog WebSocket poslužitelja pomoću websockets biblioteke.

Korak 1: Instalirajte WebSocket biblioteku

Za početak morate instalirati websockets biblioteku izvršavanjem sljedeće naredbe u terminal:

pip install websockets

Korak 2: Stvaranje WebSocket poslužitelja

Evo primjera kako izgraditi WebSocket poslužitelj u 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()  

U isječku koda:

  • async def handle_connection(websocket, path):: Ova funkcija upravlja WebSocket vezama. Svaki put kada se klijent poveže, ova se funkcija poziva za upravljanje komunikacijom.

  • async for message in websocket:: Ova petlja ponavlja kako bi osluškivala poruke od klijenta kroz WebSocket vezu.

  • await websocket.send(response): Ova funkcija šalje odgovor s poslužitelja natrag klijentu putem WebSocket veze.

  • websockets.serve(handle_connection, "localhost", 8765): Ova funkcija stvara WebSocket poslužitelj koji osluškuje veze na localhost adresi i portu 8765.

Korak 3: Testiranje poslužitelja

Nakon postavljanja koda poslužitelja, osluškivat će veze klijenata na priključku 8765. Poslužitelj možete testirati povezivanjem s njim pomoću WebSocket koda klijenta ili online alata za testiranje.

Zaključak

Slijedeći ove korake, uspješno ste izgradili jednostavan WebSocket poslužitelj u Python. Ovaj poslužitelj pruža temelj za stvaranje aplikacija u stvarnom vremenu i interakcije između poslužitelja i klijenata koji koriste WebSocket protokol.