无法通过Node中的mongojs进行MongoDB

时间:2018-04-18 18:53:14

标签: javascript node.js database mongodb mongojs

var express = require('express');
var router = express.Router();
var mongojs = require('mongojs');
var db = mongojs('mongodb://******:********@********.mlab.com:*****/XXXXXXXX_XXXX', ['XXXX']);

router.get('/tasks', function(req, res, next){
    db.tasks.find(function(err, tasks){
        if(err){
            console.log('connection error!');
            res.send(err);
        }
        res.json(tasks);
    });
});

module.exports = router;

我在节点中有这个简单的代码,我试图连接到Mongo。我相信这个过程非常简单,我正在追随它。我每次都得到身份验证失败错误。我检查了id密码,他们很好。有人能告诉我哪里出错了吗?

1 个答案:

答案 0 :(得分:0)

router.get('/tasks', (req, res)) {
db.tasks.find()
    .then(tasks => res.json(tasks))
    .catch(err => res.status(500).json(err);
});

试试看。你设置的就像get使用的是自定义中间件组件,然后你将一个函数传递给.find()调用。 .find()将获取所有文档并返回一个promise。返回promise后执行.then(),如果.find()出错,则执行.catch()。