WebSocket komunikazzjoni tippermettilek tibgħat u tirċievi messaġġi f'ħin reali bejn server u klijenti. Hawnhekk hawn gwida dettaljata dwar kif tikseb dan fl- Python użu tal- websockets
librerija.
Pass 1: Installa l- WebSocket Librerija
L-ewwel, installa l- websockets
librerija billi tħaddem il-kmand li ġej fil- terminal:
pip install websockets
Pass 2: Tibgħat u Tirċievi Messaġġi fuq is-Server
Hawn taħt hawn eżempju ta’ kif tibgħat u tirċievi messaġġi fuq 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()
Fis-snippet tal-kodiċi:
-
async def handle_connection(websocket, path):
: Din il-funzjoni tieħu ħsieb WebSocket il-konnessjonijiet. Meta klijent jibgħat messaġġ, din il-funzjoni tisma' u tibgħat tweġiba lura. -
async for message in websocket:
: Din il-linja tisma' għal messaġġi mill-klijent permezz tal- WebSocket konnessjoni. -
await websocket.send(f"Server received: {message}")
: Din il-funzjoni tibgħat tweġiba mis-server lura lill-klijent permezz tal- WebSocket konnessjoni.
Pass 3: Tibgħat u Tirċievi Messaġġi mill-Klijent
Hawn eżempju ta 'kif il-klijent jibgħat u jirċievi messaġġi mis- WebSocket server:
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())
Fis-snippet tal-kodiċi:
-
async with websockets.connect("ws://localhost:8765") as websocket:
: Dan huwa kif il-klijent jgħaqqad mas- WebSocket server. Il-klijent jistabbilixxi konnessjoni mal-localhost
indirizz u l-port8765
. -
await websocket.send("Hello, WebSocket!")
: Il-klijent jibgħat il-messaġġ lis-server.Hello, WebSocket!
-
response = await websocket.recv()
: Il-klijent jistenna li jirċievi tweġiba mis-server permezz tal- WebSocket konnessjoni.
Konklużjoni
Billi ssegwi l-passi u tifhem kull parti tal-eżempju, tgħallimt b'suċċess kif tibgħat u tirċievi messaġġi permezz WebSocket ta' Python. Dan jiftaħ possibiltajiet għall-ħolqien ta' applikazzjonijiet f'ħin reali u skambju kontinwu ta' data bejn is-server u l-klijenti.