WebSocket ialah teknologi berkuasa untuk mewujudkan saluran komunikasi masa nyata dua arah antara pelayan dan pelanggan. Di bawah ialah panduan tentang cara menyepadukan WebSocket ke dalam dua rangka kerja yang popular, Flask dan FastAPI.
Mengintegrasikan WebSocket ke dalam Flask
Langkah 1: Pasang Perpustakaan
Pertama, anda perlu memasang flask
dan flask-socketio
perpustakaan menggunakan arahan berikut:
pip install Flask flask-socketio
Langkah 2: Sediakan Aplikasi
Berikut ialah contoh cara menyepadukan WebSocket ke dalam Flask aplikasi:
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)
Dalam coretan kod di atas, kami menggunakan flask-socketio
perpustakaan untuk membuat WebSocket pelayan. Fungsi handle_message
dipanggil apabila pelanggan menghantar mesej, dan pelayan bertindak balas dengan memancarkan response
acara.
Mengintegrasikan WebSocket ke dalam FastAPI
Langkah 1: Pasang Perpustakaan
Pasang fastapi
dan uvicorn
perpustakaan menggunakan arahan berikut:
pip install fastapi uvicorn
Langkah 2: Sediakan Aplikasi
Berikut ialah contoh cara menyepadukan WebSocket ke dalam FastAPI aplikasi:
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}")
Dalam coretan kod di atas, kami gunakan FastAPI untuk membuat WebSocket pelayan. Fungsi ini websocket_endpoint
menerima WebSocket sambungan, mendengar data yang dihantar oleh pelanggan, dan bertindak balas dengan menghantar semula data kepada pelanggan.
Kesimpulan
Mengintegrasikan WebSocket ke dalam rangka kerja popular seperti Flask dan FastAPI membuka kemungkinan untuk mencipta aplikasi masa nyata dan komunikasi dua arah antara pelayan dan pelanggan.