将 socket.io Javascript 代码转换为 python-socketio
Convert socket.io Javascript code to python-socketio
我有一个 javascript 使用 socket.io。
我想将此 javascript 文件转换为 python:
io.on('connection',(socket)=>{
let nsData = namespaces.map((ns)=>{
return {
img: ns.image,
endpoint: ns.endpoint
}
})
// console.log(nsData)
socket.emit('nsList',nsData);
})
这是我在 python 中的内容:
@sio.event
def connect(socket_id, environ):
# ???
在文档中,声明您只需要使用 return 语句或使用 .emit() 函数。 https://python-socketio.readthedocs.io/en/latest/server.html#emitting-events 正如文档所说,您只需要
sio.emit('nsList', nsData, room=socket_id)
这将发出内容为 nsData 的 nsList
事件。但是,我不知道 nsData 是什么。好像只是一个map语句,用map()
函数就可以搞定。正如 GFG 所述,您只需要映射出命名空间。 https://www.geeksforgeeks.org/python-map-function/
假设命名空间是一个列表,你可以做类似的事情:
def mapNsData(ns):
return { 'img': ns.image, 'endpoint': ns.endpoint }
然后,使用地图功能:
nsData = list(map(mapNsData, namespaces))
多田!现在,您有一个列表要发送给客户!
我有一个 javascript 使用 socket.io。
我想将此 javascript 文件转换为 python:
io.on('connection',(socket)=>{
let nsData = namespaces.map((ns)=>{
return {
img: ns.image,
endpoint: ns.endpoint
}
})
// console.log(nsData)
socket.emit('nsList',nsData);
})
这是我在 python 中的内容:
@sio.event
def connect(socket_id, environ):
# ???
在文档中,声明您只需要使用 return 语句或使用 .emit() 函数。 https://python-socketio.readthedocs.io/en/latest/server.html#emitting-events 正如文档所说,您只需要
sio.emit('nsList', nsData, room=socket_id)
这将发出内容为 nsData 的 nsList
事件。但是,我不知道 nsData 是什么。好像只是一个map语句,用map()
函数就可以搞定。正如 GFG 所述,您只需要映射出命名空间。 https://www.geeksforgeeks.org/python-map-function/
假设命名空间是一个列表,你可以做类似的事情:
def mapNsData(ns):
return { 'img': ns.image, 'endpoint': ns.endpoint }
然后,使用地图功能:
nsData = list(map(mapNsData, namespaces))
多田!现在,您有一个列表要发送给客户!