【发布时间】:2018-06-29 05:37:41
【问题描述】:
我还是 node 新手,目前使用 node 版本 10.5.0 和 mongoose 版本 5.1.7。我已经仔细检查了有关 mlab 的现有问题,但没有一个解决我的问题。我正在尝试连接到 mLab,这是我的代码:
const mongoose = require('mongoose');
const dbUri = 'mongodb://username:password@ds121371.mlab.com:21371/kucubookstore';
// connecting to mlab mongodb
mongoose.connect(dbUri, function(error) {
console.log('Connection Successful', error);
});
但是收到以下错误,我不明白。请帮忙:
E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue>node test/connection.js
Connection Successful Error: Missing delimiting slash between hosts and options
at parseConnectionString (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\url_parser.js:164:11)
at parseHandler (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\url_parser.js:129:14)
at module.exports (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\url_parser.js:25:12)
at connect (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\mongo_client.js:880:3)
at connectOp (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\mongo_client.js:270:3)
at executeOperation (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\utils.js:420:24)
at MongoClient.connect (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\mongo_client.js:261:10)
at Promise (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongoose\lib\connection.js:436:12)
at new Promise (<anonymous>)
at NativeConnection.Connection.openUri (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongoose\lib\connection.js:433:19)
at Mongoose.connect (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongoose\lib\index.js:212:15)
at Object.<anonymous> (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\test\connection.js:5:10)
at Module._compile (internal/modules/cjs/loader.js:702:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
at Module.load (internal/modules/cjs/loader.js:612:32)
at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
(node:9016) UnhandledPromiseRejectionWarning: Error: Missing delimiting slash between hosts and options
at parseConnectionString (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\url_parser.js:164:11)
at parseHandler (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\url_parser.js:129:14)
at module.exports (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\url_parser.js:25:12)
at connect (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\mongo_client.js:880:3)
at connectOp (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\mongo_client.js:270:3)
at executeOperation (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\utils.js:420:24)
at MongoClient.connect (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongodb\lib\mongo_client.js:261:10)
at Promise (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongoose\lib\connection.js:436:12)
at new Promise (<anonymous>)
at NativeConnection.Connection.openUri (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongoose\lib\connection.js:433:19)
at Mongoose.connect (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\node_modules\mongoose\lib\index.js:212:15)
at Object.<anonymous> (E:\Documents\Computer and Coding\PlayGround\PROJECTS\Catalogue\test\connection.js:5:10)
at Module._compile (internal/modules/cjs/loader.js:702:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)
at Module.load (internal/modules/cjs/loader.js:612:32)
at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
(node:9016) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:9016) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
【问题讨论】:
-
您是否使用自己的
username和password而不是占位符username:password? -
您的密码中有
@等特殊字符吗? -
是的,我的第一个 DB 用户有很多特殊字符。但我创建的新用户只有一个句号
-
谢谢。请注意,我的声望很低,我的投票不算数。同时,请检查其他错误并为我提出可能的原因。
-
您可以针对遇到的新错误提出新问题。
标签: javascript node.js mongodb mongoose mlab