Door een WebSocket server in te bouwen Python, kunt u een continu en bidirectioneel communicatiekanaal tot stand brengen tussen de server en clients. Hieronder vindt u een gedetailleerde gids waarin elk onderdeel wordt uitgelegd om een basisserver te bouwen WebSocket met behulp van de websockets
bibliotheek.
Stap 1: installeer de WebSocket bibliotheek
Om te beginnen moet u de bibliotheek installeren websockets
door de volgende opdracht uit te voeren in de terminal:
pip install websockets
Stap 2: De WebSocket server maken
Hier is een voorbeeld van het bouwen van een WebSocket server in 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()
In het codefragment:
-
async def handle_connection(websocket, path):
: Deze functie handelt WebSocket verbindingen af. Elke keer dat een client verbinding maakt, wordt deze functie aangeroepen om de communicatie te beheren. -
async for message in websocket:
: Deze lus herhaalt zich om te luisteren naar berichten van de client via de WebSocket verbinding. -
await websocket.send(response)
: Deze functie stuurt een antwoord van de server terug naar de client via de WebSocket verbinding. -
websockets.serve(handle_connection, "localhost", 8765)
: Deze functie creëert een WebSocket server die luistert naar verbindingen op hetlocalhost
adres en de poort8765
.
Stap 3: De server testen
Nadat de servercode is geïmplementeerd, luistert deze naar verbindingen van clients op poort 8765. U kunt de server testen door er verbinding mee te maken met behulp van WebSocket clientcode of online testtools.
Conclusie
Door deze stappen te volgen, heb je met succes een eenvoudige WebSocket server gebouwd in Python. Deze server vormt de basis voor het creëren van real-time toepassingen en interacties tussen de server en clients die het WebSocket protocol gebruiken.