使用socket.io发送JavaScript对象时,它是将其编码为JSON还是以二进制格式发送?

时间:2017-02-16 19:32:13

标签: javascript json sockets websocket socket.io

例如,在以下代码中:

io.emit('foo', { a: 5, b: 5.5, c: "5" });

在发送之前它是否将整个事物编码为JSON对象,即

'{a:5,b:5.5,c:"5"}'

还是使用二进制格式,其中整数5占用4个字节(32位),浮点数5.5占用8个字节(64位),字符串" 5"占用1个字节加空终止符(16位)?

我之所以这样问是因为我试图通过4G / LTE连接为低延迟,频繁的socket.io通信节省带宽。

1 个答案:

答案 0 :(得分:0)

它将其编码为二进制字符串。请参阅socket.io-protocol库。