MongoError: 使用 mongoosejs 连接 mLab 时数据库名称不能包含字符 ' '

2024-04-30

这是我的JS代码:

var mongoose = require('mongoose'); 

mongoose.connect("mongodb://myUsername:[email protected] /cdn-cgi/l/email-protection:61039/accounttest");

这是我启动服务器时出现的错误

C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongodb\lib\db.js:1774
if(databaseName.indexOf(invalidChars[i]) != -1) throw MongoError.create({message: "database names cannot contain the character '" + invalidChars[i] + "'", driver:true});
                                                ^
MongoError: database names cannot contain the character ' '
at Function.MongoError.create (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongodb-core\lib\error.js:31:11)
at validateDatabaseName (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongodb\lib\db.js:1774:70)
at new Db (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongodb\lib\db.js:154:3)
at NativeConnection.doOpen (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongoose\lib\drivers\node-mongodb-native\connection.js:55:15)
at NativeConnection.Connection._open (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongoose\lib\connection.js:531:15)
at C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongoose\lib\connection.js:289:11
at new Promise.ES6 (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongoose\lib\promise.js:45:3)
at NativeConnection.Connection.open (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongoose\lib\connection.js:288:17)
at Mongoose.connect (C:\Users\Qk Lahpita\Desktop\server_node_2\node_modules\mongoose\lib\index.js:242:47)
at Object.<anonymous> (C:\Users\Qk Lahpita\Desktop\server_node_2\server.js:36:10)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.runMain (module.js:605:10)

我的数据库名称是“accounttest”,不包含“ ”字符。为什么会出现此错误以及如何修复它?

Thanks!


问题是您的数据库名称本身。其中不应该有空格。

Example

const databaseName = "Users"
const connectionURI = "mongodb://127.0.0.1"

MongoClient.connect(connectionURI,{useUnifiedTopology:true},(err,client) => {
if(err) return log("Unable to connect to database");
log("Database Connected")

const db = client.db(databaseName);

然后你可以做任何你想做的事情例如:

db.addUser("John","kio")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MongoError: 使用 mongoosejs 连接 mLab 时数据库名称不能包含字符 ' ' 的相关文章

随机推荐