现在在做的一个项目需要使用websocket通信,之前没有接触过二进制流的操作。目前我已经知道了可以使用String.fromCharCode,把Unicode代码转成字符串,但是Unicode的字长会变化,需要一个算法来解析Unicode,此外其他编码格式的解析算法又不一样。请教下有没有哪位大神能解决这些问题,或者目前有没有解析二进制的js框架。。
现在在做的一个项目需要使用websocket通信,之前没有接触过二进制流的操作。目前我已经知道了可以使用String.fromCharCode,把Unicode代码转成字符串,但是Unicode的字长会变化,需要一个算法来解析Unicode,此外其他编码格式的解析算法又不一样。请教下有没有哪位大神能解决这些问题,或者目前有没有解析二进制的js框架。。
你可以通过charCodeAt方法得到每个字符的Unicode码,包括中文,并且用四个字节来存储,然后按照顺序发送给服务端。服务端也以这种方式来解和发送,JavaScript收到后可以再通过fromCharCode还原成字符。
这种方式占用的数据流量有点大,你也可以把字符串按UTF-8的方式进行编码再发送。这里有个简单的实现:JavaScript进行UTF-8编码与解码
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答870 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
前端?我记得 websocket.onmessage 的参数直接就是已经解析好的得到的数据啊,如果你是说后端的话可以参考一下这篇文章,说明了数据的编码格式并有编码解码函数:http://www.cnblogs.com/hustskyking/p/websocket-with-node.html