运行代码时出现错误。我的代码有什么错误吗?这是我输入的代码。
const express = require("express");
const mongoose= require("mongoose");
const bodyParser = require("body-parser");
const cors = require("cors");
const dotenv=require("dotenv");
const app = express();
require("dotenv").config();
const PORT =process.env.PORT || 8070;
app.use(cors());
app.use(bodyParser.json());
const URL = process.env.MONGODB_URL;
mongoose.connect(URL, {
useCreateIndex: true,
useNewUrlParser:true,
useUnifieldTopologyL:true,
useFindAndModify:false,
});
const connection = mongoose.connection;
connection.once("open", () => {
console.log("Mongodb Connection success!");
})
app.listen(PORT, () => {
console.log('Server is up and running on port number: ${PORT}')
})
当我给npm start命令时,我得到了这个错误
backend@1.0.0 start C:UsersAdminDesktopcosmeticbackend节点server.js
服务器在端口号:${port}上启动并运行(node:4808) UnhandledPromiseRejectionWarning: MongoParseError: options usecreateindex,不支持Useunifieldtopologyl、usefindandmodify在对象。parseOptions (C: 用户桌面化妆品端 Admin node_modules mongodb lib connection_string.js: 281:15)(C:UsersAdminDesktopcosmeticbackendnode_modulesmongodblibmongo_client.js:62:46)在C:UsersAdminDesktopcosmeticbackend node_modules 猫鼬 lib connection.js: 781:16at new Promise ()(C:UsersAdminDesktopcosmeticbackendnode_modulesmongooselibconnection.js:778:19)在C:UsersAdminDesktopcosmeticbackend node_modules 猫鼬 lib index.js: 330:10在C:UsersAdminDesktopcosmeticbackend node_modules 猫鼬 lib 助手 promiseOrCallback.js:为了at new Promise ()(C:UsersAdminDesktopcosmeticbackendnode_modulesmongooselibhelperspromiseOrCallback.js:31:10)猫鼬。_promiseOrCallback (C: 用户桌面化妆品端 Admin node_modules 猫鼬 lib index.js: 1151:10)(使用
node --trace-warnings ...
显示创建警告的位置)(node:4808) UnhandledPromiseRejectionWarning:未处理的承诺拒绝。这个错误要么是由于在没有catch块的异步函数内部抛出,要么是由于拒绝了没有使用.catch()处理的承诺。要在未处理的承诺拒绝时终止节点进程,请使用CLI标志--unhandled-rejections=strict
(参见https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。(rejection id: 2)
(node:4808) [DEP0018] DeprecationWarning:未处理的承诺拒绝被弃用。将来,未处理的承诺拒绝将以非零退出码终止Node.js进程。
这个错误很直接,from Mongoose 6.0 docs:
useNewUrlParser、useUnifiedTopology、useFindAndModify和useCreateIndex不再支持选项。Mongoose 6总是表现得好像useNewUrlParser、useUnifiedTopology和useCreateIndex是true,而useFindAndModify是false。请从代码中删除这些选项。
这些选项不再被支持,你应该从你传递给mongoose连接功能的options
中删除它们。