WebSocket komunikimi ju lejon të dërgoni dhe merrni mesazhe në kohë reale midis një serveri dhe klientëve. Këtu keni një udhëzues të detajuar se si ta arrini këtë në Python përdorimin e websockets
bibliotekës.
Hapi 1: Instaloni WebSocket Bibliotekën
Së pari, instaloni websockets
bibliotekën duke ekzekutuar komandën e mëposhtme në terminal:
pip install websockets
Hapi 2: Dërgimi dhe marrja e mesazheve në server
Më poshtë është një shembull se si të dërgoni dhe merrni mesazhe në një WebSocket server:
import asyncio
import websockets
# WebSocket connection handling function
async def handle_connection(websocket, path):
async for message in websocket:
await websocket.send(f"Server received: {message}")
# 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()
Në fragmentin e kodit:
-
async def handle_connection(websocket, path):
: Ky funksion trajton WebSocket lidhjet. Kur një klient dërgon një mesazh, ky funksion dëgjon dhe dërgon një përgjigje. -
async for message in websocket:
: Ky lak dëgjon mesazhet nga klienti përmes WebSocket lidhjes. -
await websocket.send(f"Server received: {message}")
: Ky funksion dërgon një përgjigje nga serveri te klienti nëpërmjet WebSocket lidhjes.
Hapi 3: Dërgimi dhe marrja e mesazheve nga klienti
Këtu është një shembull se si klienti dërgon dhe merr mesazhe nga serveri WebSocket:
import asyncio
import websockets
async def send_and_receive():
async with websockets.connect("ws://localhost:8765") as websocket:
await websocket.send("Hello, WebSocket!")
response = await websocket.recv()
print("Received:", response)
asyncio.get_event_loop().run_until_complete(send_and_receive())
Në fragmentin e kodit:
-
async with websockets.connect("ws://localhost:8765") as websocket:
: Kjo është mënyra se si klienti lidhet me serverin WebSocket. Klienti krijon një lidhje melocalhost
adresën dhe portin8765
. -
await websocket.send("Hello, WebSocket!")
: Klienti dërgon mesazhin te serveri.Hello, WebSocket!
-
response = await websocket.recv()
: Klienti pret të marrë një përgjigje nga serveri nëpërmjet WebSocket lidhjes.
konkluzioni
Duke ndjekur hapat dhe duke kuptuar secilën pjesë të shembullit, ju keni mësuar me sukses se si të dërgoni dhe merrni mesazhe nëpërmjet WebSocket në Python. Kjo hap mundësi për krijimin e aplikacioneve në kohë reale dhe shkëmbim të vazhdueshëm të të dhënave ndërmjet serverit dhe klientëve.