Comhtháthú WebSocket isteach Flask agus FastAPI

WebSocket is teicneolaíocht chumhachtach é chun bealaí cumarsáide déthreoracha fíor-ama a bhunú idir freastalaithe agus cliaint. Anseo thíos tá treoir maidir le conas a chomhtháthú WebSocket i dhá chreat móréilimh, Flask agus FastAPI.

Comhtháthú WebSocket isteach Flask

Céim 1: Suiteáil Leabharlanna

flask Ar an gcéad dul síos, ní mór duit na leabharlanna agus na leabharlanna a shuiteáil flask-socketio ag baint úsáide as an ordú seo a leanas:

pip install Flask flask-socketio

Céim 2: Socraigh Suas an Iarratas

Seo sampla de conas comhtháthú WebSocket isteach in Flask iarratas:

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)  

Sa mhír chóid thuas, úsáidimid an flask-socketio leabharlann chun freastalaí a chruthú WebSocket. Tugtar an handle_message fheidhm nuair a sheolann cliant teachtaireacht, agus freagraíonn an freastalaí trí response imeacht a astú.

Comhtháthú WebSocket isteach FastAPI

Céim 1: Suiteáil Leabharlanna

Suiteáil na leabharlanna fastapi agus an t-ordú seo a leanas: uvicorn

pip install fastapi uvicorn

Céim 2: Socraigh Suas an Iarratas

Seo sampla de conas comhtháthú WebSocket isteach in FastAPI iarratas:

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}")

Sa bhlúire cód thuas, úsáidimid chun freastalaí FastAPI a chruthú WebSocket. Glacann an websocket_endpoint fheidhm le WebSocket naisc, éisteann sé le sonraí a sheolann cliaint, agus freagraíonn sé trí shonraí a sheoladh ar ais chuig an gcliant.

Conclúid

Nuair a dhéantar comhtháthú WebSocket le creataí móréilimh amhail Flask agus FastAPI osclaíonn sé féidearthachtaí chun feidhmchláir fhíor-ama agus cumarsáid dhéthreorach a chruthú idir freastalaithe agus cliaint.