Node Mongo Native – 如何判断游标何时耗尽?
node-mongo-native collection.find()
函数的文档说,它创build一个游标对象,它懒散地返回匹配的文档。 此外:
游标上的基本操作是从数据库中提取下一个匹配文档的
nextObject
方法。each
方便的方法和nextObject
调用nextObject
直到游标耗尽。
不幸的是,文档并没有提供如何判断游标实际耗尽的迹象。 您可以使用“toArray”方法并使用标准数组接口(例如“length”方法),但是这种解决scheme不适合stream式传输大量数据。 MongoDB API Wiki引用了mongo shell中的cursor.hasNext()
,但是这个方法在node.js驱动程序中似乎不可用。
在node.js中从MongoDBstream式传输数据时,如何确定光标何时耗尽?
Cursor#nextObject
的文档确定了如果没有更多可用结果,则其callback函数的第二个参数为null
。
第一个参数将包含错误对象,第二个参数将包含返回结果中的文档,如果没有更多结果,则返回null。