我正在使用node.js(快速)和MongoDB(在云中)制作API。为了连接它们,我使用猫鼬,一切都按预期进行。 但是,第二天启动应用程序时,无法获取任何数据或写入数据库。当我尝试使用数据库访问路由时,我得到:本地主机未发送任何数据。 ERR_EMPTY_RESPONSE,但是如果我尝试其他任何不使用数据库的路由,则该应用程序都可以正常运行。 猫鼬连接成功,所以这不是问题,如果我去mongodb.com,我可以添加/删除数据,使其也能正常工作。
这是我的app.js:
const app = express();
const mongoose = require('mongoose');
const bodyParser = require('body-parser');
const cors = require('cors');
const usersRoute = require('./routes/Users');
require('dotenv/config');
app.use(bodyParser.json());
app.use(cors());
app.use('/users', usersRoute);
mongoose
.createConnection(
process.env.DB_CONNECTION,
{ useUnifiedTopology: true, useNewUrlParser: true },
() => {
console.log('Successful connection to DB!');
}
)
这是我的路由器:
const express = require('express');
const router = express.Router();
const User = require('../models/user.model');
router.get('/getAll', async (req, res) => {
try {
const users = await User.find();
res.json(users);
} catch (err) {
res.json({ message: err });
}
});
module.exports = router;
我尝试使用其他MongoDB帐户,但一切正常,但是第二天我遇到了同样的问题。