mongodb - React Fullstack 应用程序显示 mongodb 连接错误
问题描述
我使用 MERN 堆栈创建了一个简单的 CRUD 应用程序。该应用程序昨天运行良好,但今天当我对前端进行了一些更改并开始运行该应用程序时,它无法正常工作并引发与 mongodb 连接相关的错误。我也可以提供我所有的前端代码(但在运行前端时它没有显示错误)。这是我在后端项目上执行 npm start 时遇到的错误:
[nodemon] restarting due to changes...
[nodemon] starting `node app.js`
Server is running on Port: 4200
App starting error: MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]
at Pool.<anonymous> (/Users/afzaal/expressbackend/node_modules/mongoose/node_modules/mongodb-core/lib/topologies/server.js:328:35)
at emitOne (events.js:96:13)
at Pool.emit (events.js:188:7)
at Connection.<anonymous> (/Users/afzaal/expressbackend/node_modules/mongoose/node_modules/mongodb-core/lib/connection/pool.js:274:12)
at Connection.g (events.js:292:16)
at emitTwo (events.js:106:13)
at Connection.emit (events.js:191:7)
at Socket.<anonymous> (/Users/afzaal/expressbackend/node_modules/mongoose/node_modules/mongodb-core/lib/connection/connection.js:177:49)
at Socket.g (events.js:292:16)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at emitErrorNT (net.js:1281:8)
at _combinedTickCallback (internal/process/next_tick.js:80:11)
at process._tickCallback (internal/process/next_tick.js:104:9)
[nodemon] app crashed - waiting for file changes before starting...
这是我的 app.js 文件
var express = require('express');
var app = express();
var mongoose = require('mongoose');
var bodyParser = require('body-parser');
var port = 4200;
var cors = require('cors');
// Mongoose connection with mongodb
mongoose.Promise = require('bluebird');
mongoose.connect('mongodb://localhost:27017/data')//what should I put for the URI?
.then(() => { // if all is ok we will be here
console.log('Start');
})
.catch(err => { // if error we will be here
console.error('App starting error:', err.stack);
process.exit(1);
});
// Required application specific custom router module
var itemRouter = require('./src/routes/itemRoutes');
// Use middlewares to set view engine and post json data to the server
app.use(cors());
app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json());
app.use('/items', itemRouter);
// Start the server
app.listen(port, function(){
console.log('Server is running on Port: ',port);
});
我确实安装了mongodb。我对 mongodb 很陌生,所以我不确定这是怎么回事。任何帮助是极大的赞赏。
解决方案
推荐阅读
- python - 从 Word 文档中检索字体样式、大小和其他属性
- laravel - Composer 安装强制下载为 tar 而不是 zip
- java - WSO2 BPS 定时器事件 bpmn
- linux - 如何通过 /etc/network/interfaces 获得桥接支持?
- streaming - PyAudio 输出从自定义源提供的数据处理的信号
- c# - XML 到 DataTable(列表项)
- regex - 递归地用当前IP替换IP
- sql - Redshift:分析数据库中所有表中具有空值的所有列
- ionic2 - 图像缩放 Ionic 2
- c++ - 为什么列表迭代器在 SGI STL 的实现中具有三个模板参数?