Mongodb客户端javascript api

Mongodb客户端javascript api,mongodb,client-server,client-side,javascript,Mongodb,Client Server,Client Side,Javascript,我想直接从客户端使用mongodb,在模型中使用javascript。我认为这是可能的,因为在mongo网站上有一个用于演示的javascript实时控制台 是否存在一种在普通javascript应用程序中使用相同api而不必编写客户机-服务器粘合代码的方法 谢谢看起来该站点使用了类似REST的AJAX接口,但我确信它不会直接或甚至通过某种桥间接访问任何MongoDB实例 在应用此模式之前要三思:您将如何实施安全性?您知道AJAX的局限性吗?如果你真的知道自己在做什么,官方会指出一些有用的资源:

我想直接从客户端使用mongodb,在模型中使用javascript。我认为这是可能的,因为在mongo网站上有一个用于演示的javascript实时控制台

是否存在一种在普通javascript应用程序中使用相同api而不必编写客户机-服务器粘合代码的方法


谢谢

看起来该站点使用了类似REST的AJAX接口,但我确信它不会直接或甚至通过某种桥间接访问任何MongoDB实例

在应用此模式之前要三思:您将如何实施安全性?您知道AJAX的局限性吗?如果你真的知道自己在做什么,官方会指出一些有用的资源:

  • SleepyMongoose(Python)是MongoDB的一个功能齐全的REST接口,它作为一个单独的项目提供

  • (Node.js)是MongoDB的alphaREST接口,它使用MongoDB节点本机驱动程序

  • 为了方便起见,mongod进程包括一个简单的只读REST接口。对于完整的REST功能,我们建议使用外部工具,如Sleepy.Mongoose


拥有REST桥接器并管理数据库,您可以轻松地使用AJAX调用和JavaScript直接访问MongoDB。

我自己也需要做类似的事情,在管理界面中的控制台,因为我在后端使用PHP,所以我只需要编写脚本来接收js命令并使用MongoDB::execute方法,php中的连接已经打开,因此我不必传递任何身份验证数据,只需传递命令。
但是,对于这样的事情,您必须非常小心,确保只有受信任的用户才能访问该页面(和脚本),不要将其公开,因为任何人都可以在客户端上执行js来访问您的数据库


编辑:这里是指向文档的链接

看看meteorjs或类似内容。模型编写一次,完成ACL


当你在Redis中添加时会变得更好:)

对于任何想知道的人来说,这是可能的,使用Stitch类似于Google的Firebase,因为它提供了对后端数据库的客户端访问,在本例中是Atlas BaaS上的MongoDB。Stitch还具有AWS Lambdas等功能,以及其他对开发实时应用程序有意义的功能。当我昨天在聚会上建立基本的博客教程时,看起来相当直截了当。干杯


关于安全性有什么建议吗?我想我应该在客户端和服务器端的MongoDB REST桥之间放置一些中间层,检查凭据并授权客户端。通过这种方式,客户端代码(浏览器)不知道有关MongoDB凭据的任何信息,但由于它发送会话cookie(假设用户已登录),您可以识别客户端并授予他访问权限。感谢您的回答!我同意你的看法。但是,你认为如果没有通过服务器中间层传递每个数据库请求的负担,构建一个应用程序是不可能的吗?但是couchdb和couchapp可以使用REST通信(通过一个确实干净的jquery接口)。他们如何应对安全问题?我不想学习couchdb,因为我发现它对于我所需要的(以及我所拥有的时间)来说过于复杂