Nodejs MongoError:auth失败

时间:2014-01-17 07:57:34

标签: node.js mongodb

当我执行时,我的本地mongodb中有一个用户(用户名:hxh,密码:1234):

hxh@ubuntu:~/share/nodejs/appid2zgk7rv83v$ mongo
MongoDB shell version: 2.4.6
connecting to: test
> use admin
switched to db admin
> db.auth('hxh','1234')
1
>

这表明我的用户名和密码没问题,但是当我尝试在我的nodejs app中连接mongodb时:

var Db = require('mongodb').Db;
var Server = require('mongodb').Server;  
var db = new Db('test', new Server('localhost', '27017')); 
db.open(function(err, db) {
  db.authenticate('hxh', '1234', function(err, result) { 
    .....
  });  
}); 

我收到了错误

MongoError: auth fails

为什么我收到此错误?

2 个答案:

答案 0 :(得分:0)

可能是你应该传递你的dbname,即'admin'而不是'test'

var db = new Db('admin', new Server('localhost', '27017'));

答案 1 :(得分:0)

尝试创建用户并传入测试表: 使用测试; db.createUser ...