将MongoDB连接到前端?

JVG*_*JVG 10 javascript mongodb

我用Node.js和构建了一个数据库MongoDB,我正在编写一个Angular.js应该从我的数据库调用条目的应用程序,并且能够写入这些条目.

我知道直接从javascript写入数据库存在一些安全问题,但我对这类事情完全不熟悉.更重要的是,我找不到有关如何将数据发送MongoDB到我的前端的任何说明,以便我可以实际使用它!

我如何将两者捆绑在一起?在Node.js,我使用javascript require函数加载我的数据库并从中读取/写入,但我无法找到在浏览器中执行此操作的方法.在node我使用mongojs模块将两者连接在一起,但这在我的Angular应用程序中不起作用,因为我无法使用require.

主要问题是:如何将MongoDB加载到前端?

编辑:我认为这是一个关于将MongoDB调用到前端而不是特定于角度的更基本的问题.如果我错了,请告诉我.

Phi*_*ipp 13

简短的回答:你没有.

答案长: MongoDB不是为了直接向客户端公开数据而设计的.客户端与Web服务器上的应用程序交互 - 在您的情况下在Node.js中实现 - 并且Web服务器与数据库通信.

+---------+    +---------+    +---------+ 
|Browser  |    | Node.js |    | MongoDB | 
|        ------->        |    |         |    
|         |    |         |    |         |
|         |    |        ------->        |
|         |    |         |    |         |
|         |    |         |    |         |
|         |    |        <-------        |    
|         |    |         |    |         |   
|        <-------        |    |         | 
|         |    |         |    |         |  
+---------+    +---------+    +---------+  
Run Code Online (Sandbox Code Playgroud)

这实际上意味着在用户浏览器中执行的javascript客户端应用程序向Node.js发送请求(通过正常页面请求,通过Websockets通过XmlHttpRequest或其他方法).Node.js接受此请求,然后联系MongoDB以获取实现它所需的数据.当Node.js从数据库接收数据时,它使用它来构建响应,并将其发送到客户端.

客户端应用程序没有意识到服务器使用后端数据库来完成请求.

我的学习建议是暂时离开数据库.使用angular.js使客户端从Node.js服务器应用程序加载一些静态数据.当您使用它时,扩展服务器端以从MongoDB获取数据.

  • 我实际上已经完成了您的学习建议-我编写的AngularJS应用已通过JSON加载了数据。问题是,我真的不明白(我也无法在广泛的搜索中找到)如何将数据库链接到前端。我很高兴将node用作中间人,但是我从未见过任何实现client-&gt; node-&gt; db的实现。您能提供任何资源以使我了解更多吗?我主要是一名前端开发人员,所以很多事情都困扰着我。 (2认同)