python socket.io 客户端测试代码

发布时间: 2024-02-06 17:55:26 作者: 大象笔记

为了测试基于 flask 实现的 socket.io server 端的功能,除了使用浏览器端 js 测试之外,我还想看看诸如 python,C# 这样的客户端的实现是否支持 flask 的 session 机制。即是否能够正常获取到 session id。

经过测试,server 端确实可以正常获取到 session id。

代码

import socketio

# 创建 Socket.IO 客户端实例
sio = socketio.Client()


# 当连接成功时的处理函数
@sio.event
def connect():
    print("Connected to server")
    sio.emit("login", {"id": "test", "name": "python client test"})


# 当收到自定义事件时的处理函数
@sio.event
def my_event(data):
    print("Received data:", data)


# 启动 Socket.IO 客户端
if __name__ == "__main__":
    # 连接到 Socket.IO 服务器
    sio.connect("http://localhost:5000/socket.io")
    sio.wait()

错误信息

websocket-client package not installed, only polling transport is available

pip install "python-socketio[client]"

注意代码顺序

先监听 connect 事件,然后再建立 sio.connect 连接到 server 端,否则触发不了 connect 事件

我是一名山东烟台的开发者,联系作者