gpt4 book ai didi

node.js - 为什么nodejs-mongodb中间件的语法与mongo shell不同?

转载 作者:太空宇宙 更新时间:2023-11-03 23:03:40 25 4
gpt4 key购买 nike

即使我使用 node-mongodb-native ,我必须以与我在 mongodb shell 中编写的函数略有不同的方式使用略有不同的函数。

  1. 到底为什么它更好?
  2. 有没有办法使用与我在终端中使用的完全相同的语法mongodb shell?
  3. 如果是这样,有什么缺点吗?例如,对于 PostgreSQL,中间件中有一些有用的功能,例如 SQL 注入(inject)预防等。

最佳答案

如果您可以发布您想要比较的相同功能的两个版本的示例,那么我可以给您更好的解释,但由于您没有提供任何示例,所以我只能笼统地说。

一些差异是因为 Mongo shell 按顺序执行所有内容。在 Node 中,您必须使用回调或 Promise 来进行流量控制,而在 Mongo shell 中则不需要这样做。

访问集合的方式也存在一些差异。在 Mongo shell 中,您通常使用 db.collectionName

此外,在 Mongo shell 中,您还预定义了一些内容,例如与对象 ID 相关的函数。

最后,Mongo 使用 BSON 来存储数据,而在 Node 中,您使用 JavaScript 对象文字(更像 JSON,但不太严格)。

Node 使用 V8 以及附加功能,Mongo shell 使用 SpiderMonkey,但 Node 中没有可用的功能。

这一切都会产生微妙差异的后果。

更多详情请参见:

关于node.js - 为什么nodejs-mongodb中间件的语法与mongo shell不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41397386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com