#mongodb #express #mongoose
#mongodb #экспресс #мангуст
Вопрос:
Ошибка «MongooseError: uri
параметр to openUri()
должен быть строкой, получил «undefined». Убедитесь, что первым параметром для mongoose.connect()
или mongoose.createConnection()
является строка.» Я прикрепляю ss файла и изображение ошибки
код в db.js (хранится в папке конфигурации) является
const mongoose = require('mongoose')
const connectDB = async () => {
try {
const conn = await mongoose.connect(process.env.MONGO_URI, {
useNewUrlParser: true,
useUnifiedTopology: true,
useFindAndModify: false
})
console.log(`${conn.connection.host}`)
} catch (err) {
console.log(err)
}
}
module.exports = connectDB
Комментарии:
1. вы не включаете файл среды.
require("dotenv").config()
вверху. И установите пакет с помощьюnpm i dotenv
2. используете ли вы Heroku для размещения этого? Или это локально?
3. кроме того, попробуйте консоль. протоколирование process.env.MONGO_URI, чтобы убедиться, что он действительно существует
Ответ №1:
Пожалуйста, не прикрепляйте внешние ссылки и / или скриншоты — поместите код прямо здесь.
Как говорится в ошибке, «uri» (первый параметр) to mongoose.connect
не определен и должен быть строкой — убедитесь, что вы успешно загружаете переменные среды, и убедитесь, что вы не допустили опечатки в имени process.env.MONGO_URI
переменной, поскольку в настоящее время оно оценивается undefined
как .