簡體   English   中英

Node.js 應用無法連接到 MongoDB Atlas 集群

[英]Node.js app cannot connect to MongoDB Atlas cluster

錯誤:服務器在端口 5000 上以開發模式運行 errorMongoParseError:不支持選項 usecreateindex [nodemon] 應用程序崩潰 - 在啟動前等待文件更改...

數據庫.js

const connectDB = async () => {
  try {
    const conn = await mongoose.connect(process.env.MONGO_URI, {
      useUnifiedTopology: true,
      useNewUrlParser: true,
      useCreateIndex: true,
    });
    console.log(`MongoDB connected :${conn.connection.host}`);
  } catch (error) {
    console.error(`error${error}`);
    process.exit(1);
  }
};
export default connectDB;

服務器.js

import express from "express";
import dotenv from "dotenv";
import connectDB from './config/db.js'
import products from './data/products.js'


dotenv.config();

connectDB()

const app = express();

app.get("/", (req, res) => {
  res.send("api is running... ");
});

app.get("/api/products", (req, res) => {
  res.json(products);
});

app.get("/api/products/:id", (req, res) => {
  const product = products.find(p => p._id === req.params.id);
  res.json(product);
});


const PORT = process.env.PORT || 5000

app.listen(PORT, console.log(`server running in ${process.env.NODE_ENV} mode on port ${PORT}`));

不再有棄用警告選項

Mongoose 文檔

useNewUrlParser、useUnifiedTopology、useFindAndModify 和 useCreateIndex 不再是受支持的選項。 ZCCADCDEDB567ABAE643E15DCF0974E503Z 6 總是表現得好像 useNewUrlParser、useUnifiedTopology 和 useCreateIndex 為 true,而 useFindAndModify 為 false。 請從您的代碼中刪除這些選項。

數據庫.js

const connectDB = async () => {
  try {
    const conn = await mongoose.connect(process.env.MONGO_URI, {
      // useUnifiedTopology: true, <-- no longer necessary
      // useNewUrlParser: true, <-- no longer necessary
      // useCreateIndex: true, <-- no longer necessary
    });
    console.log(`MongoDB connected :${conn.connection.host}`);
  } catch (error) {
    console.error(`error${error}`);
    process.exit(1);
  }
};
export default connectDB;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM