entegre etmek WebSocket ve Flask FastAPI

WebSocket sunucular ve istemciler arasında çift yönlü gerçek zamanlı iletişim kanalları oluşturmak için güçlü bir teknolojidir. WebSocket Aşağıda, iki popüler çerçeveye nasıl entegre edileceğine ilişkin bir kılavuz bulunmaktadır Flask ve FastAPI.

WebSocket entegre etmek Flask

1. Adım: Kitaplıkları Kurun

Öncelikle, aşağıdaki komutu kullanarak flask ve kitaplıklarını yüklemeniz gerekir: flask-socketio

pip install Flask flask-socketio

2. Adım: Uygulamayı Kurun

İşte WebSocket bir Flask uygulamaya nasıl entegre edileceğine dair bir örnek:

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)  

Yukarıdaki kod parçacığında, flask-socketio bir sunucu oluşturmak için kitaplığı kullanıyoruz WebSocket. İşlev handle_message, bir istemci bir mesaj gönderdiğinde çağrılır ve sunucu bir response olay yayarak yanıt verir.

WebSocket entegre etmek FastAPI

1. Adım: Kitaplıkları Kurun

Aşağıdaki komutu kullanarak fastapi ve kitaplıklarını kurun: uvicorn

pip install fastapi uvicorn

2. Adım: Uygulamayı Kurun

İşte WebSocket bir FastAPI uygulamaya nasıl entegre edileceğine dair bir örnek:

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

Yukarıdaki kod parçacığında, FastAPI bir sunucu oluşturmak için kullanıyoruz WebSocket. İşlev bağlantıları websocket_endpoint kabul eder WebSocket, istemciler tarafından gönderilen verileri dinler ve verileri istemciye geri göndererek yanıt verir.

Çözüm

WebSocket gibi popüler çerçevelere entegre etmek, Flask gerçek FastAPI zamanlı uygulamalar ve sunucular ile istemciler arasında çift yönlü iletişim oluşturmak için olanaklar sunar.