Δημιουργία απλού 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 πρωτόκολλο.