Mon goose ошибка при подключении к mongodb - PullRequest
0 голосов
/ 26 января 2020

Я пытаюсь заставить mongoDB работать вместе с базой данных phpMyAdmin, и я получаю сообщение об ошибке, что не могу тренироваться.

Я был бы начинающим программистом, так что это может быть довольно просто c Ошибка, которую я где-то сделал. Насколько я знаю, я установил все правильные зависимости, и описанная ошибка появляется, когда я запускаю сервер nodemon на своей консоли.

const express = require("express")
const cors = require("cors")
const bodyParser = require("body-parser")
const app = express()
const mongoose = require('mongoose');

require('dotenv').config();

//server for the SQL database
const port = process.env.PORT || 5000

app.use(bodyParser.json())
app.use(cors())
app.use(bodyParser.urlencoded({extended: false}))

var Users = require('./routes/user.routes')

app.use('/users', Users)

app.listen(port, () => {
    console.log("Server is running on port: " + port)
})

// server for MongoDB database

app.use(cors());
app.use(express.json());

const uri = process.env.ATLAS_URI;

//console.log(uri)

mongoose.createConnection(uri, { useNewUrlParser: true, useCreateIndex: true }
);
const connection = mongoose.createConnection();
connection.once('open', () => {
    console.log("MongoDB database connection established successfully");
})

const formsRouter = require('./routes/formDatabase.routes');
const adviceRouter = require('./routes/studentAdvice.routes');

app.use('/formDatabase.routes', formsRouter);
app.use('/studentAdvice.routes', adviceRouter);

app.listen(port, () => {
    console.log(`Server is running on port: ${port}`);
});

[nodemon] перезапускается из-за изменений ... [nodemon] запускается node server backend/server/server.js (узел: 25800) MaxListenersExceededWarning: Возможная утечка памяти в EventEmitter. 11 выходных слушателей добавлено в [Bus]. Используйте emitter.setMaxListeners (), чтобы увеличить предел

\ softwaredevproject \ cra-beacon \ node_modules \ mongoose \ lib \ connection. js: 543 выбросить новую ошибку MongooseError ('The uri параметр openUri() должен быть '+ ^ Ошибка [MongooseError]: параметр uri для openUri() должен быть строкой, получившей "undefined". Убедитесь, что первый параметр для mongoose.connect() или mongoose.createConnection( ) является string. at new MongooseError ( \ softwaredevproject \ cra-beacon \ node_modules \ mongoose \ lib \ error \ mongooseError. js: 10: 11) в NativeConnection.Connection.openUri ( \ softwaredevproject \ cra-beacon \ node_modules \ mongoose \ lib \ connection. js: 543: 11) в понедельник goose .createConnection ( \ softwaredevproject \ cra-beacon \ node_modules \ mongoose \ lib \ index. js: 278: 17) в Object. (*** \ softwaredevproject \ cra-beacon \ backend \ server \ server. js: 33: 10) в Module._compile (внутренний / modules / cjs / loader . js: 971: 30) в Object.Module._extensions .. js (внутренний / modules / cjs / loader. js: 1011: 10) в Module.load (i nternal / modules / cjs / loader. js: 822: 32) в Function.Module._load (внутренняя / modules / cjs / loader. js: 730: 14) в Function.Module.runMain (внутренняя / modules / cjs / loader. js: 1051: 12) at internal / main / run_main_module. js: 16: 11 {message: 'Параметр uri для openUri() должен быть строкой, получившей "undefined". Убедитесь, что первый параметр mongoose.connect() или mongoose.createConnection() является строкой. 'Name:' MongooseError '} Приложение [nodemon] не выполнено - ожидание изменений файла перед запуском ...

1 Ответ

0 голосов
/ 26 января 2020

Я думаю, что это из-за настроек вашей среды, лучше угадать настройку ATLAS_URI .

ATLAS_URI = mongodb: // localhost / NAME

Поскольку ошибка утверждает, что ничего не было пройдено, возможно, вы забыли добавить этот параметр в файл .env ?

...