问题标签 [bson]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
57974 浏览

c# - 协议缓冲区与 JSON 或 BSON

有没有人有任何关于 Protocol Buffers 与 BSON(二进制 JSON)或一般 JSON 的性能特征的信息?

  • 线径
  • 序列化速度
  • 反序列化速度

这些看起来像是在 HTTP 上使用的很好的二进制协议。我只是想知道从长远来看,对于 C# 环境来说哪个更好。

这是我在BSONProtocol Buffers上阅读的一些信息。

0 投票
3 回答
3299 浏览

base64 - Base64 编码的 BSON 比 BSON 小吗?

Base64 编码的 BSON 比 BSON 小吗?

0 投票
9 回答
108862 浏览

java - 从 JSON 字符串创建 BSON 对象

我有从外部应用程序获取数据的 Java 应用程序。传入的 JSON 是字符串。我想解析那个字符串并创建 BSON 对象。

不幸的是,我在 Java 的 BSON 实现中找不到 API。

我有像 GSON 那样使用外部解析器吗?

0 投票
2 回答
8870 浏览

json - Mongo JSON 文档 -> JSON -> BSON

我正在使用 Node.js 构建一个使用 mongodb 的 Web 套接字服务器。

我使用 node-mongodb-native 作为库来访问 mongo db。

当我在数据库中的对象上调用 console.log(sys.inspect(item)) 时,我得到如下所示的内容:

所以我猜测 id 是 mongo 使用的 BSON 对象 id。

我需要使用 JSON 将此对象发送到客户端 Web 浏览器,让他们对其执行一些操作,然后将其发送回服务器。

当我 JSON.stringify(item) 时,我得到如下所示的内容:

所以 id 已经变成了一些十六进制编码的字符串。如果我将它发送给客户端,然后客户端将其发回,我现在需要在数据库中更新它。我运行 JSON.parse(item) 让它成为一个普通对象,但它仍然看起来像这样:

并且 _id 不能用于在 mongodb 中查找。

如何将其转换回可用于在 mongo 上查找的格式?

- 更新 -

有趣的是,我可以findOne({_id:item._id}, collection)用来获取文档,但如果我这样做:

findOne({_id:{id : item._id.id}}, collection)

我没有收到结果。我想 mongo _id 对象有一些特别之处。

两者都 {_id:item._id}{_id:{id : item._id.id}} 当被丢弃时看起来像这样:

--另一个更新已解决---

集成测试文件中有一些对象 ID 操作。

objectId = new mongo.ObjectID.createFromHexString('47cc67093475061e3d95369d'); 将给出我正在寻找的 _id。

objectId.toHexString() 将返回看起来像 '47cc67093475061e3d95369d' 的十六进制字符串

0 投票
3 回答
1668 浏览

javascript - 为什么叫BSON?

那么BSON是JSON序列化的吗?

{"hello": "world"}"\x16\x00\x00\x00\x02hello\x00 \x06\x00\x00\x00world\x00\x00"

但是为什么叫Binary Json呢?二进制代表什么?

我总是倾向于将二进制与 10101010101 联系起来。但是上面的 BSON 序列化格式不是 101010101010 的形式。

有人可以为我解释一下这里的二进制是什么意思,这样我就明白为什么它被称为二进制 JSON 了吗?

0 投票
1 回答
1456 浏览

ruby-on-rails-3 - Rails 3, MongoId & bson 版本问题

我刚刚更新到 Rails 3 final。现在我遇到了 MongoId、Mongo 的 Ruby 驱动程序和 bson 的问题。当我尝试运行 Rails 时,我得到“你已经激活了 bson 1.0.7,但是你的 Gemfile 需要 bson 1.0.4。考虑使用 bundle exec。(Gem::LoadError)”。

MongoId 需要 bson_ext 1.0.4,所以我的 Gemfile 中有 gem "bson_ext", "1.0.4"。我试图卸载 bson 1.0.7,但是 Rails 无法启动,因为 Mongo Ruby 驱动程序需要 bson >= 1.0.5。

那么有什么想法可以解决这个问题吗?

0 投票
5 回答
42606 浏览

java - java的BSON库?

我们在 java http://blog.locut.us/main/2009/10/14/which-is-the-best-java-json-library.html中对 JSON 有很好的支持,但是 BSON 呢。

你知道哪个库为 java 提供 BSON 支持?它在运行时显然应该是有效的。

0 投票
2 回答
3875 浏览

java - org.bson.BSONObject 中的 java 类型

我目前正在学习mongodb 的 BSON java 库,我正在尝试将org.bson.BSONObject转换为 XML,以便使用XSLT样式表对其进行转换。

我可以在 Mongodb 的 BSONObject 中找到什么样的 java 类型作为值?当然会有:

  • BSONObject(内部文档)
  • java.lang.String
  • ???

其他人是什么?BigDecimal 和 BigInteger ?布尔,整数,长,双?时间戳……等等……??

谢谢,

皮埃尔

0 投票
2 回答
1484 浏览

iphone - 将MongoDB BSON ObjectId(oid)转换为Objective-C中的生成时间?

我发现了这个:

功能: http: //github.com/timburks/NuMongoDB/blob/master/src/bson.c#L128 字节:http: //github.com/timburks/NuMongoDB/blob/master/src/platform_hacks.h#L55 结构:http: //github.com/timburks/NuMongoDB/blob/master/src/bson.h#L70

但是,对于从服务器获取 oid 作为字符串并想要提取 created_at 时间戳的 iPhone 应用程序,我究竟该如何使用它呢?这就是我到目前为止所拥有的。这是一种 Objective-C 方法,但我可以将 c 代码放在我的 Objective-c .m 文件中吗?

马特

0 投票
5 回答
5238 浏览

java - BSON 串行器/解串器

是否有用于 PHP 或 Java 的 BSON 序列化器/反序列化器库?