无法使用localhost URL和MongoJS查询MongoDB

时间:2017-01-13 07:13:23

标签: node.js mongodb express mongojs

这是我正在尝试运行的tasks.js代码:

/*jslint node:true*/

var express = require('express');
var router = express.Router();

var mongojs = require('mongojs');
var db = mongojs('mongodb://localhost:27017/tasks', ['tasks']);

router.get('/tasks', function (req, res, next) {
'use strict';
db.tasks.find(function(err, tasks) {
   if(err){
       res.send(err);
   }
   res.json(tasks);
});
});

module.exports = router;

该代码用于查询和显示json文件的所有内容。

当我用这个mLab URL替换db localhost URL时:

var db = mongojs('mongodb://username:password@ds161008.mlab.com:61008/mytasklist_muhab', ['tasks']);

效果很好。

我认为字符串有问题。我在MongoDB文档中查找了connectionString标准,但我找不到问题。

我没有为本地数据库分配任何用户名或密码。

Mongod运行正常,我可以使用Mongo shell在同一个数据库上运行命令,没有任何问题。

1 个答案:

答案 0 :(得分:0)

根据mongojs文档,您可能无需使用mongodb://localhost:27017作为 connectionString 的一部分,本地数据库只能尝试使用{{} 1}}

像:

dbName

var db = mongojs('tasks', ['tasks'])

并使用var db = mongojs('tasks') var mycollection = db.collection('tasks') error事件

检查您建立的连接
connect