繁体   English   中英

在 socket.emit() 中传递参数的问题

[英]Issue with passing parameters in socket.emit()

            document.querySelector('#sendmessage').onclick = () => {
                const channel = "sports";
                const name = document.querySelector('#displayname').data("displayname");
                const msg = document.querySelector('[name="message"]').value;
                const time = timeStamp();
                //message(n,d,t);
                socket.emit('updatemessage', {'channel':channel, 'name':name, 'msg':msg, 'time':time});
            }

我在 socket.emit() 部分传递这四个参数(通道、名称、味精、时间)时遇到问题。 我需要将它们传递给 Flask 服务器以存储消息详细信息。 我可以传递多个参数吗? 如果没有,我该如何处理?

编辑:烧瓶片段

@socketio.on('updatemessage')
def updatemessage(data):
    print("initialised")
    channel = data["channel"]
    name = data["name"]
    channels[channel][name][0] = data["msg"]
    channels[channel][name][1] = data["time"]
    print(f" this is the update channel info : {channels}")
    m = channels[channel]
    print(f"m is :  {m}")
    emit('message loader', m, broadcast=True)

实际上我正在尝试将消息数据存储在烧瓶服务器的全局变量中

回答我自己的问题!

我检查发现这一行有一些问题const name = document.querySelector('#displayname').data("displayname");

现在它工作得很好。 我相信它一定是造成问题的socket.emit()部分

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM