传输原始二进制而不是JSON

时间:2013-02-06 15:26:23

标签: javascript json binary typed-arrays

我们都知道在客户端和服务器(确切地说是Web浏览器和Web服务器)之间发送原始二进制而不是 JSON 会相当减少带宽使用并提高速度传输数据,但正如我们所见,所有流行的基于Web的系统仍使用 JSON Gmail,Google Plus,Facebook,Linkedin和...
现在,我们在JavaScript中使用Typed Array,这使得解析二进制数据非常简单快捷。

目前我将开发一个基于网络的金融系统,我认为使用原始二进制使系统比 JSON 快得多。

我想知道为什么那些流行的基于网络的系统没有使用原始二进制而不是 JSON 来在客户端和客户端之间传输数据服务器?我不知道有任何技术原因吗?

提前致谢。

3 个答案:

答案 0 :(得分:4)

Typed Arrays是最近的事情,并且在历史上并没有得到许多浏览器的支持。当您希望尽可能多的人使用您的产品时,您将选择最常见的分母。

这并不是说将来这些系统不会采用这种方法,而是直到大多数人支持这种方法。

答案 1 :(得分:4)

Endianness问题是一个原因。灵活性是另一个,二进制你的数据包格式是固定的,所以你需要第一次正确使用它,像JSON这样的东西没有严格的字段排序,你可以添加新的,而不会破坏兼容性(不适用于删除它们)。

答案 2 :(得分:1)

浏览器兼容性(主要是IE)。查看Caniuse Typed Arrays:http://caniuse.com/typedarrays