4

我已经看到了所有使用backbone.js 和node 的帖子/相同的应用程序——但我想让它尽可能简单,并且该应用程序不太依赖实时、异步调用或任何东西。

我怎么能这样做呢?我不能只将backbone.sync 与MongoDB 一起使用吗?

希望在这里得到一些帮助...

4

3 回答 3

8

Mongodb 确实提供了一个 http 接口,您可以让您的客户端 javascript 应用程序直接与之对话。

但是,它可以做的事情是有限的。

您可以使用多种技术来为 mongodb 提供更全功能的 http 接口

此链接为您提供有关通过 HTTP 与 mongo 交互所需的所有信息,还概述了一些 3rd 方技术以增强其功能。

MongoDB - Http 接口

希望能帮助到你。

于 2012-05-14T06:19:24.160 回答
7

从安全的角度来看,这是一个非常糟糕的主意。通过这样做,您将向世界开放您的数据库,这只是自找麻烦。任何仔细检查您的客户端代码的人都将能够弄清楚如何访问您的 mongodb 并使用它来存储他们想要的任何内容,而无需他们支付任何费用,并且您需要支付全部费用。此外,如果您不小心,他们甚至可以读取其他用户的数据或关闭或更改服务器,包括更改身份验证凭据。

除非您绝对信任您的用户,否则您需要有一些位于服务器(而不是客户端)上的中间件(例如 node.js),其工作是说“是的,你可以这样做,不,你不能这样做那。”

于 2014-03-09T23:11:49.130 回答
1

Raadad 提到了 HTTP 接口,但它(如他链接的页面所述)仅为了方便而提供。它不是功能齐全的 REST 接口,不建议用于生产。如果您正在寻找这样的界面,那么您应该看看 sleepy mongoose 和类似的:

http://www.snailinaturtleneck.com/blog/2010/02/22/sleepy-mongoose-a-mongodb-rest-interface/

基本上,我的意思是,如果您遇到 HTTP 接口问题,每个人都会给您的第一条建议是“不要使用 HTTP 接口”。

如果你想保持一切原生和在 node.js 中,那么官方支持的原生 node.js 驱动程序是要走的路:

https://github.com/mongodb/node-mongodb-native

于 2012-05-14T16:26:43.123 回答