如何测量被socket.io内部传输的数据大小

我们知道socket.io不会传输二进制文件。 当我们通过socket.io发送二进制(二进制string)数据时,它会转义并发送给服务器。 我需要多less大小这样的方式添加到二进制string的实际大小,并比较它和base64编码的string大小。

我正在做的是使用socket.io上传文件,我见过很多base64的例子,增加了大约33%的文件大小。 我正在寻找一种安全的方式来上传由socket.io支持的所有浏览器支持的文件,而不会增加大的尺寸。 我知道Websockets传输二进制文件,但问题是与IE8 IE9。 因此,我正在研究二进制string传输。

谢谢

如果您在基于Microsoft.NET的平台上运行解决scheme,则可以查看XSockets.NET ,它支持二进制(RFC6455)WebSockets消息。 如果客户端不支持二进制,你可以使用base64编码的消息。