WebSocket hija teknoloġija qawwija biex jiġu stabbiliti kanali ta 'komunikazzjoni bidirezzjonali f'ħin reali bejn is-servers u l-klijenti. Hawn taħt hawn gwida dwar kif tintegra WebSocket f'żewġ oqfsa popolari, Flask u FastAPI.
L-integrazzjoni WebSocket fi Flask
Pass 1: Installa Libreriji
L-ewwelnett, għandek bżonn tinstalla l flask
-u flask-socketio
libreriji billi tuża l-kmand li ġej:
pip install Flask flask-socketio
Pass 2: Twaqqaf l-Applikazzjoni
Hawn eżempju ta' kif tintegra WebSocket f'applikazzjoni Flask:
from flask import Flask, render_template
from flask_socketio import SocketIO, emit
app = Flask(__name__)
socketio = SocketIO(app)
@app.route('/')
def index():
return render_template('index.html')
@socketio.on('message')
def handle_message(message):
emit('response', {'data': message})
if __name__ == '__main__':
socketio.run(app)
Fis-snippet tal-kodiċi hawn fuq, nużaw il- flask-socketio
librerija biex noħolqu WebSocket server. Il- handle_message
funzjoni tissejjaħ meta klijent jibgħat messaġġ, u s-server jirrispondi billi jarmi avveniment response
.
L-integrazzjoni WebSocket fi FastAPI
Pass 1: Installa Libreriji
Installa l fastapi
-u uvicorn
libreriji billi tuża l-kmand li ġej:
pip install fastapi uvicorn
Pass 2: Twaqqaf l-Applikazzjoni
Hawn eżempju ta' kif tintegra WebSocket f'applikazzjoni FastAPI:
from fastapi import FastAPI, WebSocket
from fastapi.responses import HTMLResponse
app = FastAPI()
@app.get('/')
def get():
return HTMLResponse(content=open("index.html").read())
@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
await websocket.accept()
while True:
data = await websocket.receive_text()
await websocket.send_text(f"Server received: {data}")
Fis-snippet tal-kodiċi hawn fuq, nużaw FastAPI biex noħolqu WebSocket server. Il- websocket_endpoint
funzjoni taċċetta WebSocket konnessjonijiet, tisma 'd-dejta mibgħuta mill-klijenti, u twieġeb billi tibgħat id-dejta lura lill-klijent.
Konklużjoni
L-integrazzjoni WebSocket f'oqfsa popolari bħal Flask u FastAPI tiftaħ possibbiltajiet għall-ħolqien ta 'applikazzjonijiet f'ħin reali u komunikazzjoni bidirezzjonali bejn servers u klijenti.