gpt4 book ai didi

websocket - 这些数字在 socket.io 有效负载中意味着什么?

转载 作者:行者123 更新时间:2023-12-03 22:35:49 28 4
gpt4 key购买 nike

当我使用 native websocket API 时,我可以在我的 chrome 控制台中看到一个用于 sockts 的有效负载:
enter image description here

但是当我将 socket.io 与他们的发出事件一起使用时,我可以在我的实际有效负载之前看到一些奇怪的数字。我明白颜色意味着您发送或接收数据,但是像 42, 3, 2, 430, 420, 5 这样的数字是什么意思?意思是。

有没有地方可以得到这些数字的完整列表和描述?

enter image description here

生成它的代码有点大,所以我只发布小片段。

客户端总是这样:
socket.emit('joinC', room, function(color){ ... });
服务器端如下所示:
io.sockets.in(room).emit('moveS', {...});

最佳答案

我知道你刚才问过,但这些信息仍然留给那些正在研究的人。
我在 2.3.0 (socket.io) 和 3.4.2 (engine.io) 版本中对逆向工程进行了分析,得到以下结果:
第一个数字是 engine.io 的通信类型,使用枚举器:


key
值(value)


0
“打开”

1
“关闭”

2
“平”

3
“乒乓”

4
“信息”

5
“升级”

6
“午睡”


第二个数字是 socket.io 的操作类型,使用枚举器


key
值(value)


0
“连接”

1
“断开”

2
“事件”

3
“确认”

4
“错误”

5
“BINARY_EVENT”

6
“BINARY_ACK”


还有其他可选信息可以传递,例如命名空间和 ID,但我不会深入讨论这部分。
在这些代码之后,他需要一个 Json 数组,其中索引 0 是事件的名称,索引 1 是参数。
所以指令42["moveS",{"from":"g1", "to", "f3"}]是 engine.io (4) 的消息,是 socket.io (2) 的事件,它将发出传递 JSON {"from": "g1", "to", "f3"} 的“moveS” Action 作为参数(实际上是 JSON.Parse({"from": "g1", "to", "f3"}) )。
希望这可以帮助。 =D

关于websocket - 这些数字在 socket.io 有效负载中意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24564877/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com