Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 正在尝试从本地主机服务器连接mLAB DB?身份验证失败_Json_Node.js_Mongodb_Api_Mlab - Fatal编程技术网

Json 正在尝试从本地主机服务器连接mLAB DB?身份验证失败

Json 正在尝试从本地主机服务器连接mLAB DB?身份验证失败,json,node.js,mongodb,api,mlab,Json,Node.js,Mongodb,Api,Mlab,下面是代码片段: var mongoose = require('mongoose'); //mongodb://localhost/db mongoose.connect('mongodb://username:pwd@ds117859.mlab.com:17859/db'); var db = mongoose.connection; 现在,当我连接到localhost服务器时,它工作正常,我能够在本地Mongo DB上执行操作 但当我在MLAB上连接到我的db时,我得到以下错误: $

下面是代码片段:

var mongoose = require('mongoose');

//mongodb://localhost/db
mongoose.connect('mongodb://username:pwd@ds117859.mlab.com:17859/db');
var db = mongoose.connection;
现在,当我连接到localhost服务器时,它工作正常,我能够在本地Mongo DB上执行操作 但当我在MLAB上连接到我的db时,我得到以下错误:

$ node app.js
Server started on port 3000
(node:8648) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): MongoError: Authentication failed.
打印错误对象时,我得到以下结果:

err { MongoError: Authentication failed.
    at C:\Users\user\Desktop\loginapp-master\node_modules\mongoose\node_modules\mongodb-core\lib\connection\pool.js:595:61
    at authenticateStragglers (C:\Users\user\Desktop\loginapp-master\node_modules\mongoose\node_modules\mongodb-core\lib\connection\pool.js:513:16)
    at Connection.messageHandler (C:\Users\user\Desktop\loginapp-master\node_modules\mongoose\node_modules\mongodb-core\lib\connection\pool.js:549:5)
    at emitMessageHandler (C:\Users\user\Desktop\loginapp-master\node_modules\mongoose\node_modules\mongodb-core\lib\connection\connection.js:309:10)
    at Socket.<anonymous> (C:\Users\user\Desktop\loginapp-master\node_modules\mongoose\node_modules\mongodb-core\lib\connection\connection.js:452:17)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at Socket.Readable.push (_stream_readable.js:134:10)
    at TCP.onread (net.js:547:20)
  name: 'MongoError',
  message: 'Authentication failed.',
  ok: 0,
  errmsg: 'Authentication failed.',
  code: 18,
  codeName: 'AuthenticationFailed' }
err{MongoError:身份验证失败。
位于C:\Users\user\Desktop\loginapp master\node\u modules\mongoose\node\u modules\mongodb core\lib\connection\pool.js:595:61
在AuthenticateTraggler(C:\Users\user\Desktop\loginapp master\node\u modules\mongoose\node\u modules\mongodb core\lib\connection\pool.js:513:16)
在Connection.messageHandler(C:\Users\user\Desktop\loginapp master\node\u modules\mongoose\node\u modules\mongodb core\lib\Connection\pool.js:549:5)
在emitMessageHandler(C:\Users\user\Desktop\loginapp master\node\u modules\mongoose\node\u modules\mongodb core\lib\connection\connection.js:309:10)
在套接字上。(C:\Users\user\Desktop\loginapp master\node\u modules\mongoose\node\u modules\mongodb core\lib\connection\connection.js:452:17)
在emitOne(events.js:96:13)
在Socket.emit(events.js:188:7)
在readableAddChunk(_stream_readable.js:176:18)
在Socket.Readable.push(_stream_Readable.js:134:10)
在TCP.onread(net.js:547:20)
名称:“MongoError”,
消息:“身份验证失败”,
好:0,,
errmsg:'身份验证失败',
代码:18,
代码名:“身份验证失败”}

您是创建了数据库用户名和密码,还是使用了您的帐户用户名和密码?连接字符串中不应使用您的帐户用户名和密码。请参阅此处的详细信息:您是否创建了具有权限的用户?不是您的用户/pwd帐户,而是该项目的用户。这是文件谢谢@tfogo。这就是问题所在。谢谢你@Rafaelderrio。
            //replace username,password and databasename
            var mongoose = require('mongoose');
            var mongodbUrl = "mongodb://username:password@ds153869.mlab.com:53869/databasename";
            mongoose.connect(mongodbUrl,  { useNewUrlParser: true });

            mongoose.connection.on("connected", function(){
                console.log("mongoose database connected with " + mongodbUrl);
            });
            mongoose.connection.on("error", function(err){
                console.log("Unable to connect with " +mongodbUrl + "error are"+ err);
            });