首先,使用以下命令安装必要的软件包:
npm install express cors mongoose
然后,将依赖项添加到server.js,创建数据库模式和集合名称,创建Express.js服务器,并连接到MongoDB:
var express = require('express'); var cors = require('cors'); // 我们将使用CORS启用跨源域请求。 var mongoose = require('mongoose'); var Schema = mongoose.Schema; var app = express(); var schemaName = new Schema({ request: String, time: Number }, { collection: 'collectionName' }); var Model = mongoose.model('Model', schemaName); mongoose.connect('mongodb://localhost:27017/dbName'); var port = process.env.PORT || 8080; app.listen(port, function() { console.log('Node.js listening on port ' + port); });
现在添加Express.js用于查询数据的路由:
app.get('/find/:query', cors(), function(req, res) { var query = req.params.query; Model.find({ 'request': query }, function(err, result) { if (err) throw err; if (result) { res.json(result) } else { res.send(JSON.stringify({ error : 'Error' })) } }) })
假设以下文档在模型的集合中:
{ "_id" : ObjectId("578abe97522ad414b8eeb55a"), "request" : "JavaScript is Awesome", "time" : 1468710551 } { "_id" : ObjectId("578abe9b522ad414b8eeb55b"), "request" : "JavaScript is Awesome", "time" : 1468710555 } { "_id" : ObjectId("578abea0522ad414b8eeb55c"), "request" : "JavaScript is Awesome", "time" : 1468710560 }
目的是查找并显示"JavaScript is Awesome"该"request"键下包含的所有文档。
为此,MongoDB的启动和运行server.js有node server.js:
要使用它来查找数据,请在浏览器中转到以下URL:
http://localhost:8080/find/<query>
<query>搜索查询在哪里。
例:
http://localhost:8080/find/JavaScript%20is%20Awesome
输出:
[{ _id: "578abe97522ad414b8eeb55a", request: "JavaScript is Awesome", time: 1468710551, __v: 0 }, { _id: "578abe9b522ad414b8eeb55b", request: "JavaScript is Awesome", time: 1468710555, __v: 0 }, { _id: "578abea0522ad414b8eeb55c", request: "JavaScript is Awesome", time: 1468710560, __v: 0 }]
本文向大家介绍Node.js 使用Mongoose和Express.js路由将数据保存到MongoDB,包括了Node.js 使用Mongoose和Express.js路由将数据保存到MongoDB的使用技巧和注意事项,需要的朋友参考一下 示例 设定 首先,使用以下命令安装必要的软件包: 代码 然后,将依赖项添加到server.js文件中,创建数据库模式和集合名称,创建Express.js服务器,
问题内容: 目前,我使用angular-file- upload处理图像上传,我只是将图像保存到服务器的文件系统中,并在HTML中引用它。但是,我想尝试将图像直接存储在为博客文章定义的架构内的数据库中。 我要这样做,这样我就可以拥有一个存储图像本身的字段。我当时想我可以像以前一样上传图像,但是在上传图像之后将其转换并以二进制(或其他形式)存储在Mongo中。这可能吗? 谢谢! 问题答案: 下面的示
本文向大家介绍Node.js 使用Mongoose连接到MongoDB,包括了Node.js 使用Mongoose连接到MongoDB的使用技巧和注意事项,需要的朋友参考一下 示例 首先,使用以下命令安装Mongoose: 然后,将其添加server.js为依赖项: 接下来,创建数据库模式和集合名称: 创建一个模型并连接到数据库: 接下来,启动MongoDB并server.js使用运行node s
问题内容: 我正在尝试使用Mongoose将AngularJS与MongoDB连接。我想传递控制器要使用的模型,所以我可以$ scope到数据。我不确定是否必须设置Angular Service,如果可以,您是否可以指出正确的方向。谢谢。 概述: 模型: 控制器: 问题答案: 您将需要一个临时步骤。直接从Angular转到Mongo是行不通的。如果您想要Mongo的通用REST接口,可以使用Ang
问题内容: 我正在尝试使用express.js创建一个简单的CMS,以动态创建路由。它从数据库中获取一个JSON,如下所示: 并遍历对象以创建路由,如下所示: 现在一切正常。但是问题在于,每次用户修改内容和路径时,都需要重新启动整个节点应用程序。我没有找到任何API调用来删除路由。 有什么方法可以安全地删除通过app.get设置的旧路由吗?我应该这样做吗? 有没有更好的方法来进行这种路由?我喜欢这
我对猫鼬的简单findById有麻烦。 已确认该项目存在于数据库中 与猫鼬 不会找到的。 我也试过转换成mongoId,仍然找不到(即使mongoose应该是为你做这件事的) 实际上,我正在尝试将它与typescript一起使用,因此使用了Await。 我也尝试了方法,仍然找不到。 是否有一些方法可以通过简单的字段来查找项目?_id必须在模式中吗?(文件说不是) 我可以通过模式中的其他值找到,只是