以python实现利用websocket和json实现通讯
57浏览 · 2024-03-11 21:48:58
要在 Python 中使用 WebSocket 和 JSON 实现通讯,可以使用 `websocket` 库和 `json` 库。
下面是一个简单的示例[代码](https://geek.csdn.net/educolumn/1572ef9b473b4e00f6b2bf6d428b7c27?spm=1055.2569.3001.10083),其中使用了 Python 的 `websocket` 库实现了 WebSocket 的[服务端](https://geek.csdn.net/educolumn/138b997f54b66bf1827ffa55b42cc8a4?spm=1055.2569.3001.10083),同时使用了 `json` 库将[消息](https://geek.csdn.net/educolumn/20acd77092e0c464c067a69674f1ed19?spm=1055.2569.3001.10083)转换为 JSON 格式进行传输:
import json
import websocket
def on_message(ws, message):
# 将收到的消息解析为 JSON
data = json.loads(message)
# 处理消息
if data['type'] == 'hello':
print('收到 Hello 消息')
elif data['type'] == 'goodbye':
print('收到 Goodbye 消息')
def on_error(ws, error):
print(error)
def on_close(ws):
print('连接关闭')
def on_open(ws):
print('连接成功')
# 发送消息
message = {
'type': 'hello',
'message': 'Hello, World!'
ws.send(json.dumps(message))
if __name__ == '__main__':
# 连接 WebSocket [服务端](https://geek.csdn.net/educolumn/138b997f54b66bf1827ffa55b42cc8a4?spm=1055.2569.3001.10083)
ws = websocket.WebSocketApp('ws://localhost:8080/',
on_message=on_message,
on_error=on_error,
on_close=on_close)
ws.on_open = on_open
ws.[run](https://geek.csdn.net/educolumn/15da07d43c7a20f5ec210826be35c36c?spm=1055.2569.3001.10083)_forever()