2017-02-27 18 views
0

に接続するときにデータベース名が文字「」を含めることはできませんが、私のJSコードです:私はMongoError:使用mongoosejsはここMLAB

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) 

サーバを起動するとき

var mongoose = require('mongoose'); 

mongoose.connect("mongodb://myUsername:[email protected]:61039/accounttest"); 

、ここではエラーがある私のデータベースの名前は "accounttest"で、文字は含まれていません。なぜこのエラーが発生し、どのように修正できますか?

ありがとうございます!

+0

別のデータベースに接続しようとしましたか、データベース名がありませんでしたか? –

答えて

0

私はmyUsernamemyPasswordはあなたの本当の値ではないと仮定しています。あなたのユーザー名またはパスワードに特殊文字が含まれている場合は、それらをエンコードする必要があります。そのような場合は、次のように試してみてください。

mongoClient.connect("mongodb://myEncodedUsername:[email protected]:61039/accounttest", {uri_decode_auth: true}, function(err, db) { 
}); 
+0

私のユーザ名は、a-zの下位と上位の文字のみです。私のパスワードは、a-zとaの下位の文字のみです。両方とも特別なcharecterを持っていません:( –

関連する問題