将Socket.io的JavaScript连接监听代码转换为python-socketio实现
Python-socketio 对应实现方案
直接替换你现有connect函数内的逻辑即可,核心对应关系如下:
- JS中的
Array.map遍历取值,对应Python的列表推导式实现 - JS中单个socket对象调用emit发消息给当前连接,对应python-socketio中调用
sio.emit时指定to参数为当前连接的socket_id
完整代码示例
# 假设你的namespaces变量是存储类实例的列表,和原JS逻辑对应 @sio.event def connect(socket_id, environ): # 遍历生成nsData,等价原JS的map逻辑 ns_data = [ { "img": ns.image, "endpoint": ns.endpoint } for ns in namespaces ] # 向当前连接的客户端发送nsList事件 sio.emit('nsList', ns_data, to=socket_id)
适配说明
如果你的namespaces是存储字典的列表,把列表推导式里的取值方式改为字典取值即可:
"img": ns["image"]"endpoint": ns["endpoint"]
内容的提问来源于stack exchange,提问作者user16987274
相关产品推荐
相关产品推荐

