大家。我正在为MongoDB 2.x安排一个MongoDB课程,并且我遇到了Q& A中未解决的问题。这门课程或多或少被遗弃了,所以教师和许多学生都没有积极参与其中。
我正在尝试构建一个使用Mongo的非常简单的Socket.io聊天应用。到目前为止,我只有一个server.js文件和一个node_modules文件夹,基本上就是这样。我的server.js文件如下:
1 const mongo = require('mongodb').MongoClient;
2 const client = require('socket.io').listen(3000).sockets;
3
4 mongo.connect( /* 'mongodb://127.0.0.1/mongochat',*/ { useNewUrlParser: true }, (err, db) => {
5 if(err) {
6 throw err;
7 }
8 console.log("The server has started and MongoDB is currently connected.");
9 client.on('connection', (socket) => {
10 //
11 });
12 });
在第4行,我尝试使用" mongodb://127.0.0.1/mongochat"取消注释并离开,并且没有" useNewUrlParser"部分,因为在课程中,它最初表示为:
mongo.connect( 'mongodb://127.0.0.1/mongochat', (err, db) => { //etc. etc.
这两种尝试都没有奏效。我得到的错误信息是:
/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/server.js:6
throw err;
^
Error: URL malformed, cannot be parsed
at module.exports (/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/node_modules/mongodb/lib/url_parser.js:17:21)
at deprecated (internal/util.js:53:15)
at connect (/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/node_modules/mongodb/lib/mongo_client.js:980:3)
at connectOp (/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/node_modules/mongodb/lib/mongo_client.js:323:3)
at executeOperation (/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/node_modules/mongodb/lib/utils.js:420:24)
at MongoClient.connect (/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/node_modules/mongodb/lib/mongo_client.js:314:10)
at Function.MongoClient.connect (/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/node_modules/mongodb/lib/mongo_client.js:536:22)
at Object.<anonymous> (/home/ktaherig/Videos/Dev/Traversy Media/MongoDB Projects/SocketChat/server.js:4:7)
at Module._compile (internal/modules/cjs/loader.js:654:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:665:10)
我无法弄清楚我做错了什么。