78websoeket集成到flask框架
# server端
from flask import Flask from flask_socketio import SocketIO app = Flask(__name__) app.config["SECRET_KEY"] ="gsagdgasg436fgsdh" socketio = SocketIO(app) # 当客户端连接时触发 @socketio.on("connect") def handle_connect(): print('Client connected') # 当客户端断开连接时触发 @socketio.on("disconnect") def handle_disconnect(): print("Client disconnected") # 处理客户端发送的消息 @socketio.on("message") def handle_message(data): print("client -> server message:",data) #向客户端发送响应 socketio.emit("response",{'data':'Server reeived:'+data}) if __name__ == '__main__': print("socketio 服务启动") socketio.run(app,host='0.0.0.0',port=5000)
# 客户端
import socketio # 创建socket.IO客户端实例 sio = socketio.Client() # 连接成功时触发 @sio.event def connect(): print("Connected to server") # 向服务器发送消息 sio.emit("message","hello,Server") # 收到服务器响应时触发 @sio.event def response(data): print("server -> client:",data) # 断开连接时触发 @sio.event def disconnect(): print("disconnected from server") exit(0) # 连接到服务器 sio.connect('http://localhost:5000') # 保持连接时触发 sio.wait()
通过socketio实例和flask实例绑定,在使用flask api接口的同时也支持websocket实时双向通信
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构