那么 BSON 是 JSON 序列化的吗?
{"hello": "world"}
→ "\x16\x00\x00\x00\x02hello\x00 \x06\x00\x00\x00world\x00\x00"
但为什么叫Binary Json呢?二进制代表什么?
我总是倾向于将二进制与 10101010101 联系起来。但是上面的 BSON 序列化格式并不是 101010101010 形式。
有人可以帮我解释一下这里的二进制意味着什么,以便我理解为什么它被称为二进制 JSON 吗?
它是二进制的,而不是文本。 JSON 是人类可读的文本,而 BSON 是二进制数据(只是字节)。你could将其写为 1001010 等,但更常见的是一次显示每个字节(因此 \x16 只是十六进制 16,即十进制字节 22)。基本上,这里的“二进制”是用来与文本数据进行比较的,并不是说它实际上是特别的基数2。
这意味着您只能在可以传输任意二进制数据的情况下使用 BSON。例如,如果您想在 XML 文档中嵌入 BSON(无论出于何种原因!),您必须首先对其进行 Base64 编码,因为 XML 是基于文本的表示形式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)