gpt4 book ai didi

mongodb - cloudfoundry 中的 Node.js mongodb-native 驱动认证

转载 作者:可可西里 更新时间:2023-11-01 09:19:37 27 4
gpt4 key购买 nike

我目前正在尝试使用 Node 和 Mongo 进行一些自学。我一直在查看各种博客条目,并且一直在搞乱如何使用 mongo 数据库在 Node 中编写一个简单的博客。

无论如何,我在让它在 cloudfoundry 中工作时遇到了问题。我查看了有关身份验证的 mongodb-native 用户组,并找到了一些 Node 脚本:

var Db = require('mongodb').Db;
var Connection = require('mongodb').Connection;
var Server = require('mongodb').Server;
var BSON = require('mongodb').BSON;
var ObjectID = require('mongodb').ObjectID;

ArticleProvider = function(dbname,host, port,username,password) {
this.db= new Db(dbname, new Server(host, port, {auto_reconnect: true}, {}));
this.db.open(function(){
this.db.authenticate(username, password, function(err, db) {
callback(err, db);
});
});
};

我这辈子都做不到。

       this.db.authenticate(username, password, function() {}); 
^
TypeError: Cannot call method 'authenticate' of undefined
at /home/ben/NodeJS/sandbox/NodeBlog/articleprovider-mongodb.js:10:17
at /home/ben/NodeJS/sandbox/NodeBlog/node_modules/mongodb/lib/mongodb/db.js:81:14
at /home/ben/NodeJS/sandbox/NodeBlog/node_modules/mongodb/lib/mongodb/connections/server.js:76:11
at /home/ben/NodeJS/sandbox/NodeBlog/node_modules/mongodb/lib/mongodb/admin.js:16:12
at [object Object].<anonymous> (/home/ben/NodeJS/sandbox/NodeBlog/node_modules/mongodb/lib/mongodb/admin.js:124:12)
at [object Object].emit (events.js:67:17)
at [object Object].<anonymous> (/home/ben/NodeJS/sandbox/NodeBlog/node_modules/mongodb/lib/mongodb/connections/server.js:97:12)
at [object Object].emit (events.js:64:17)
at Socket.<anonymous> (/home/ben/NodeJS/sandbox/NodeBlog/node_modules/mongodb/lib/mongodb/connection.js:108:16)
at Socket.emit (events.js:64:17)

如果有人能够指出我是一个彻头彻尾的捂脸者,我们将不胜感激。

最佳答案

我也遇到过同样的问题。经过更努力的尝试,我找到了解决方案。

这可能对所有 mongodb 开发人员都非常有帮助。

var ArticleProvider =  function(host, port, username, password) {
this.db= new Db('my_db', new Server(host, port, {auto_reconnect: true}, {}));
this.db.open(function(err,data){
if(data){
data.authenticate(username, password,function(err2,data2){
if(data2){
console.log("Database opened");
}
else{
console.log(err2);
}
});
}
else{
console.log(err);
}
});
};

干杯..

关于mongodb - cloudfoundry 中的 Node.js mongodb-native 驱动认证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6948684/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com