попытался подключить mongodb к моему приложению, получив ошибку

#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 как .