Javascript WebSocket和二进制数据
据我所知,WebSocket支持二进制数据传输。二进制支持错误Javascript WebSocket和二进制数据,javascript,html,node.js,websocket,socket.io,Javascript,Html,Node.js,Websocket,Socket.io,据我所知,WebSocket支持二进制数据传输。二进制支持错误 那么,是否有支持二进制数据传输的websocket服务器?Socket.io似乎错过了这个机会。也许还有其他的吗?在WebSocket服务器中支持二进制数据非常简单(比UTF-8实际做的工作要少)。真正的问题是在浏览器中支持二进制数据类型。它正在开发中,但到目前为止,还没有浏览器版本能够支持发送和接收二进制类型(类型化数组、blob) 如果您现在需要在浏览器添加支持之前发送二进制数据,可以尝试我的python服务器和Javascri
那么,是否有支持二进制数据传输的websocket服务器?Socket.io似乎错过了这个机会。也许还有其他的吗?在WebSocket服务器中支持二进制数据非常简单(比UTF-8实际做的工作要少)。真正的问题是在浏览器中支持二进制数据类型。它正在开发中,但到目前为止,还没有浏览器版本能够支持发送和接收二进制类型(类型化数组、blob) 如果您现在需要在浏览器添加支持之前发送二进制数据,可以尝试我的python服务器和Javascript客户端库。它使用base64编码通过线路传输二进制数据。它在Javascript端使用数字数组(0-255)来表示二进制数据,而不是类型化数组/blob 一些链接:
- (关于二进制数据支持的部分现在都已修复)
- 铬15或更高
- IE10(Windows 8开发者预览版的一部分)
- Firefox11或更高版本
所以现代浏览器都不支持二进制消息:(对于Firefox/Chrome,我想他们支持二进制文件还需要几个月的时间。Chrome刚刚获得了对二进制消息的支持:是的,就在那里。我已经更新了WebSockets测试套件报告,包括Chrome和不同版本的Firefox,以反映:二进制支持在最近的Chrome版本中。Mozil终于有了行动la front和我希望下一个Aurora(alpha)版本的Mozilla也会有支持。我怀疑IE 10也有支持,但我还没有直接研究过。@kanaka你知道有没有办法查询浏览器的二进制支持?看起来FF10不支持二进制帧,只是默默地丢弃了“坏的”frames.@jalf,不幸的是,没有干净简单的方法。我知道的唯一对象检测方法是实例化一个假的WebSocket对象,然后查看它是否具有binaryType属性:
ws=newWebSocket(“ws://localhost:12345”);if(“binaryType”在ws中){……}
在Chrome提供初始支持之前,我就抱怨过这一点,但没有动力去修复它。