WebSocket ligeann cumarsáid duit teachtaireachtaí fíor-ama a sheoladh agus a fháil idir freastalaí agus cliaint. Seo treoir mhionsonraithe ar conas é seo a bhaint amach agus Python an websockets
leabharlann á úsáid.
Céim 1: Suiteáil an WebSocket Leabharlann
Ar dtús, suiteáil an websockets
leabharlann tríd an ordú seo a leanas a rith sa terminal:
pip install websockets
Céim 2: Teachtaireachtaí a sheoladh agus a fháil ar an bhfreastalaí
Seo thíos sampla de conas teachtaireachtaí a sheoladh agus a fháil ar WebSocket fhreastalaí:
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()
Sa bhlúire cód:
-
async def handle_connection(websocket, path):
: Láimhseálann an fheidhm seo WebSocket naisc. Nuair a sheolann cliant teachtaireacht, éisteann an fheidhm seo agus seolann freagra ar ais. -
async for message in websocket:
: Éisteann an lúb seo le haghaidh teachtaireachtaí ón gcliant tríd an WebSocket nasc. -
await websocket.send(f"Server received: {message}")
: Seolann an fheidhm seo freagra ón bhfreastalaí ar ais chuig an gcliant tríd an WebSocket nasc.
Céim 3: Teachtaireachtaí a Sheoladh agus a Fháil ón gCliant
Seo sampla den chaoi a seolann agus a fhaigheann an cliant teachtaireachtaí ón WebSocket bhfreastalaí:
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())
Sa bhlúire cód:
-
async with websockets.connect("ws://localhost:8765") as websocket:
: Seo mar a nascann an cliant leis an WebSocket bhfreastalaí. Bunaíonn an cliant nasc leis anlocalhost
seoladh agus leis an gcalafort8765
. -
await websocket.send("Hello, WebSocket!")
: Seolann an cliant an teachtaireacht chuig an bhfreastalaí.Hello, WebSocket!
-
response = await websocket.recv()
: Fanann an cliant le freagra a fháil ón bhfreastalaí tríd an WebSocket nasc.
Conclúid
Trí na céimeanna a leanúint agus gach cuid den sampla a thuiscint, d'éirigh leat foghlaim conas teachtaireachtaí a sheoladh agus a fháil trí WebSocket mheán Python. Osclaíonn sé seo féidearthachtaí chun feidhmchláir fhíor-ama agus malartú leanúnach sonraí a chruthú idir an freastalaí agus na cliaint.