小编adk*_*kan的帖子

构建处理 MongoDB 查询的 Express 路由的最佳实践

我正在构建一个 RESTful 服务,用于使用Express.jsNode.jsMongoDB查询电影数据库 ,而且我是所有这些的初学者。

我的问题是使用 Node 构建 db 查询的最佳实践是什么,以便我利用回调机制而不阻塞服务器,但同时不编写臃肿的代码。

我修改了 express-generator 提供的代码,我认为它实现了前者而不是后者。你有什么意见?

如果您能为处理数据库查询的 Express 路由提供通用框架,我将不胜感激。

下面是我的代码

var findMovie = function(db, callback, req, res) {
var path = req.path.split("\/");
var cursor = db.collection('movies').find({"_id" : ObjectId(path[path.length - 2])});

var query = [];
cursor.each(function(err, doc) {
    assert.equal(err, null);
    if (doc != null) {
        query.push(doc);
    } else {
        res.json(query);
        callback();
    }
});
Run Code Online (Sandbox Code Playgroud)

}

router.get('/movies/:id/info/', function(req, res, next){
MongoClient.connect(url, function(err, db) {
  assert.equal(null, err);
  findMovie(db, function() {
      db.close();
  }, …
Run Code Online (Sandbox Code Playgroud)

database mongodb node.js express

3
推荐指数
1
解决办法
4527
查看次数

标签 统计

database ×1

express ×1

mongodb ×1

node.js ×1