客户端websocket限制消息长度

时间:2012-01-16 21:11:38

标签: javascript firefox google-chrome node.js websocket

我正在使用node.js开发一个websockter服务器,我在Chrome中发现了一些怪癖。 Chrome on(OS X 10.7 64位)最大字符串长度为17740,而Firefox似乎处理非常大的字符串没有问题。我发现的另一个问题是可以在websocket hybi-17中发送的最大消息长度是2 ^ 64-1,或者是无符号64位整数中的max int,但是javascript甚至无法处理数字格式大的数字。让你的协议使用你的前端语言无法轻易处理的数字似乎很奇怪。所以这里真正的问题是有一种方法可以强制浏览器中的websocket接口将消息限制到一定的长度。我可以轻松地使用自己的函数来完成它,但我知道真正信任任何客户端代码都是不好的。我正在寻找在所有平台上获得一致性的最佳方法。

1 个答案:

答案 0 :(得分:2)

在服务器上限制它,如果传入的数据太长,只需关闭连接。