WebSocket 是在服务器和客户端之间建立双向实时通信通道的强大技术。 以下是有关如何集成 WebSocket 到两个流行框架 Flask 和 的指南 FastAPI。
融入 WebSocket _ Flask
第 1 步:安装库
首先,您需要 使用以下命令安装 flask
和库: flask-socketio
pip install Flask flask-socketio
第 2 步:设置应用程序
WebSocket 以下是如何集成到应用程序中 的示例 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)
在上面的代码片段中,我们使用该 flask-socketio
库来创建 WebSocket 服务器。 当客户端发送消息时调用该 handle_message
函数,服务器通过发出事件进行响应 response
。
融入 WebSocket _ FastAPI
第 1 步:安装库
使用以下命令 安装 fastapi
和库: uvicorn
pip install fastapi uvicorn
第 2 步:设置应用程序
WebSocket 以下是如何集成到应用程序中 的示例 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}")
在上面的代码片段中,我们用来 FastAPI 创建一个 WebSocket 服务器。 该 websocket_endpoint
函数接受 WebSocket 连接,侦听客户端发送的数据,并通过将数据发送回客户端进行响应。
结论
集成到 和 WebSocket 等流行框架中, 为创建实时应用程序以及服务器和客户端之间的双向通信提供了可能性。 Flask FastAPI