WebSocket is een krachtige technologie voor het tot stand brengen van bidirectionele real-time communicatiekanalen tussen servers en clients. Hieronder vindt u een gids over hoe te integreren WebSocket in twee populaire frameworks, Flask en FastAPI.
Integreren WebSocket in Flask
Stap 1: Installeer bibliotheken
Eerst moet u de bibliotheken flask
en installeren flask-socketio
met behulp van de volgende opdracht:
pip install Flask flask-socketio
Stap 2: stel de applicatie in
Hier is een voorbeeld van hoe te integreren WebSocket in een Flask applicatie:
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)
In het bovenstaande codefragment gebruiken we de flask-socketio
bibliotheek om een WebSocket server te maken. De handle_message
functie wordt aangeroepen wanneer een client een bericht verzendt en de server reageert door een response
gebeurtenis uit te zenden.
Integreren WebSocket in FastAPI
Stap 1: Installeer bibliotheken
Installeer de bibliotheken fastapi
en uvicorn
met behulp van de volgende opdracht:
pip install fastapi uvicorn
Stap 2: stel de applicatie in
Hier is een voorbeeld van hoe te integreren WebSocket in een FastAPI applicatie:
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}")
In het bovenstaande codefragment gebruiken we FastAPI om een WebSocket server te maken. De websocket_endpoint
functie accepteert WebSocket verbindingen, luistert naar gegevens die door clients zijn verzonden en reageert door gegevens terug te sturen naar de client.
Conclusie
Integratie WebSocket in populaire frameworks zoals Flask en FastAPI opent mogelijkheden voor het creëren van real-time applicaties en bidirectionele communicatie tussen servers en clients.