当我尝试 运行 这段代码时,出现以下错误
When i am trying to run this code i am getting the following error
我正在尝试通过此代码连接 mongodb 数据库,但是当 运行 此代码时我收到错误(代码底部的错误)。
其中一个错误出现在第 7 行,通过添加解决了该错误
{ useNewUrlParser: true }
但它仍然有更多错误。我正在使用 MongoDB 版本 4.0.1
。有谁知道如何解决这个错误。
const express = require('express');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');
const app = express();
app.use(express.static('public'));
app.set('view engine','ejs');
mongoose.connect('mongod://localhost/students', { useNewUrlParser: true });
var studentSchema = new mongoose.Schema({
name: String,
age:Number,
country:String
});
var Student = mongoose.model("Student", studentSchema);
var shashank = new Student({
name:"Shashank",
age:"21",
country:"India"
});
shashank.save((err,student) => {
if(err){
console.log('Something went wrong!');
}
else {
console.log("You added: " + student);
}
});
app.listen(3000,() => {
console.log('Server Listening!');
});
运行 此代码时出错!
D:\HARDWORK\YelpCamp-Course>node app.js
Server Listening!
(node:14060) UnhandledPromiseRejectionWarning: MongoParseError: Invalid connection string
at parseConnectionString (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb-core\lib\uri_parser.js:216:21)
at connect (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\operations\mongo_client_ops.js:179:3)
at connectOp (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\operations\mongo_client_ops.js:283:3)
at executeOperation (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\utils.js:420:24)
at MongoClient.connect (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\mongo_client.js:168:10)
at Promise (D:\HARDWORK\YelpCamp-Course\node_modules\mongoose\lib\connection.js:499:12)
at new Promise (<anonymous>)
at NativeConnection.Connection.openUri (D:\HARDWORK\YelpCamp-Course\node_modules\mongoose\lib\connection.js:496:19)
at Mongoose.connect (D:\HARDWORK\YelpCamp-Course\node_modules\mongoose\lib\index.js:229:15)
at Object.<anonymous> (D:\HARDWORK\YelpCamp-Course\app.js:9:10)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
(node:14060) 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: 3) (node:14060) [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.
mongoose.connect('mongod://localhost/students', { useNewUrlParser: true });
它应该以 mongodb://... 开头,并且当您使用 { useNewUrlParser: true }
时,您应该始终在连接字符串 mongoose reference 中指定端口号,如下所示。
mongoose.connect('mongodb://localhost:27017/students', { useNewUrlParser: true });
这里的端口号 27017
是 MongoDB 数据库的默认端口。
我遇到了同样的问题,我只是在终端中通过命令
启动了 mongo
1) sudo 服务 mongod 启动
2) mongo
对我有用。
你写的主机不对,应该是。米
mongoose.connect('mongodb://localhost:27017/students', { useNewUrlParser: true });
在连接到 5.7 版本的 mongoose 之前使用这两组更干净和稳定
mongoose.set('useNewUrlParser', true);
mongoose.set('useUnifiedTopology', true);
我正在尝试通过此代码连接 mongodb 数据库,但是当 运行 此代码时我收到错误(代码底部的错误)。
其中一个错误出现在第 7 行,通过添加解决了该错误
{ useNewUrlParser: true }
但它仍然有更多错误。我正在使用 MongoDB 版本 4.0.1
。有谁知道如何解决这个错误。
const express = require('express');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');
const app = express();
app.use(express.static('public'));
app.set('view engine','ejs');
mongoose.connect('mongod://localhost/students', { useNewUrlParser: true });
var studentSchema = new mongoose.Schema({
name: String,
age:Number,
country:String
});
var Student = mongoose.model("Student", studentSchema);
var shashank = new Student({
name:"Shashank",
age:"21",
country:"India"
});
shashank.save((err,student) => {
if(err){
console.log('Something went wrong!');
}
else {
console.log("You added: " + student);
}
});
app.listen(3000,() => {
console.log('Server Listening!');
});
运行 此代码时出错!
D:\HARDWORK\YelpCamp-Course>node app.js
Server Listening!
(node:14060) UnhandledPromiseRejectionWarning: MongoParseError: Invalid connection string
at parseConnectionString (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb-core\lib\uri_parser.js:216:21)
at connect (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\operations\mongo_client_ops.js:179:3)
at connectOp (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\operations\mongo_client_ops.js:283:3)
at executeOperation (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\utils.js:420:24)
at MongoClient.connect (D:\HARDWORK\YelpCamp-Course\node_modules\mongodb\lib\mongo_client.js:168:10)
at Promise (D:\HARDWORK\YelpCamp-Course\node_modules\mongoose\lib\connection.js:499:12)
at new Promise (<anonymous>)
at NativeConnection.Connection.openUri (D:\HARDWORK\YelpCamp-Course\node_modules\mongoose\lib\connection.js:496:19)
at Mongoose.connect (D:\HARDWORK\YelpCamp-Course\node_modules\mongoose\lib\index.js:229:15)
at Object.<anonymous> (D:\HARDWORK\YelpCamp-Course\app.js:9:10)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
(node:14060) 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: 3) (node:14060) [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.
mongoose.connect('mongod://localhost/students', { useNewUrlParser: true });
它应该以 mongodb://... 开头,并且当您使用 { useNewUrlParser: true }
时,您应该始终在连接字符串 mongoose reference 中指定端口号,如下所示。
mongoose.connect('mongodb://localhost:27017/students', { useNewUrlParser: true });
这里的端口号 27017
是 MongoDB 数据库的默认端口。
我遇到了同样的问题,我只是在终端中通过命令
启动了 mongo1) sudo 服务 mongod 启动 2) mongo
对我有用。
你写的主机不对,应该是。米
mongoose.connect('mongodb://localhost:27017/students', { useNewUrlParser: true });
在连接到 5.7 版本的 mongoose 之前使用这两组更干净和稳定
mongoose.set('useNewUrlParser', true);
mongoose.set('useUnifiedTopology', true);