WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,常用于构建实时应用。相比传统的 HTTP 请求,它能显著降低延迟并提升交互效率。
✅ 为什么选择 WebSocket?
- 实时性:数据可双向流动,适合聊天、游戏、数据推送等场景
- 轻量高效:相比 HTTP 长轮询,减少服务器负载和网络流量
- 跨域支持:通过
Origin
头实现安全的跨域通信(需注意 CORS 配置)
📌 典型应用场景
场景 | 示例 |
---|---|
在线聊天 | 📱 实时消息收发 |
游戏对战 | 🎮 低延迟操作同步 |
股票行情 | 📈 实时数据更新 |
远程控制 | 🖥️ 即时指令传输 |
🧪 快速上手示例
import asyncio
import websockets
async def echo(websocket, path):
async for message in websocket.iter_messages():
print(f"收到消息: {message}")
await websocket.send(f"已收到: {message}")
start_server = websockets.serve(echo, "localhost", 8765)
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()