Node.js &引用;“无法验证”;和承诺的mongo
我使用NodeJS后端代码连接MongoDB。它工作得很好,直到我启用MongoDB的客户端访问控制。运行此代码时,我收到“无法验证”消息: 纯MongoDB代码(即没有承诺…)工作正常:Node.js &引用;“无法验证”;和承诺的mongo,node.js,mongodb,authentication,Node.js,Mongodb,Authentication,我使用NodeJS后端代码连接MongoDB。它工作得很好,直到我启用MongoDB的客户端访问控制。运行此代码时,我收到“无法验证”消息: 纯MongoDB代码(即没有承诺…)工作正常: var mongodb = require('mongodb'); var uri = 'mongodb://myusername:mypassword@localhost/mydb'; mongodb.MongoClient.connect(uri, function (err, db) { if
var mongodb = require('mongodb');
var uri = 'mongodb://myusername:mypassword@localhost/mydb';
mongodb.MongoClient.connect(uri, function (err, db) {
if (err) {
// never reached here
}
var candidates = db.collection('candidates');
candidates.insert(req.body, function(err, result) {
if (err) {
// never reached here
}
res.send('{result: success}');
});
});
有什么想法吗?根据github存储库中的几个问题(请参阅和)使用此库进行身份验证似乎完全失败。在第二个链接中,大多数人似乎都在通过promisify、bluebird或一个瘦的自定义包装器来用承诺包装官方库。立即连接,并担心以后的收藏var db=pmongo('mydb'));来自文档..希望此帮助已经完成,不起作用…上午..来自您的邮件,其中e.message说“无法验证”“……这就是问题所在。检查mongodb的凭据。你有所有的访问权限吗。并尝试使用mongo shell连接同一个凭据。就像这个mongo-u-p--authenticationDatabase yourAuthDBI使用第二段代码(可以工作)来“证明”这不是错误凭据的问题。mongo shell也为我工作。这是save()方法的问题(或者是我之前错过的问题),但我就是搞不清楚到底是什么。。。
var mongodb = require('mongodb');
var uri = 'mongodb://myusername:mypassword@localhost/mydb';
mongodb.MongoClient.connect(uri, function (err, db) {
if (err) {
// never reached here
}
var candidates = db.collection('candidates');
candidates.insert(req.body, function(err, result) {
if (err) {
// never reached here
}
res.send('{result: success}');
});
});