Я создал POST-запрос для создания пользователей в моем REST API, но как только я выполню запрос и установлю параметры в Postman, я перехожу в MongoDB Atlas, и там говорится, что существует 0 баз данных и 0 коллекций.
Не уверен, что я делаю неправильно, но я настроил базу данных для подключения через файл .env.
//router.js
router.post("/register", (req, res) => {
const newUser = new User({
name: req.body.name,
email: req.body.email,
password: req.body.password
});
newUser
.save()
.then(user => res.json(user))
.catch(err => res.status(404).json({ success: false }));
});
module.exports = router;
//server.js
require("dotenv").config();
const express = require("express");
const mongoose = require("mongoose");
const bodyParser = require("body-parser");
const userController = require("./routes/users");
const app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
mongoose.connect(process.env.MONGODB_URI, {
useNewUrlParser: true
});
const db = mongoose.connection;
db.on("error", error => {
console.log(error);
});
db.once("open", () => {
console.log("Connected to Mongoose");
});
app.use(express.json());
app.use(express.static(__dirname + "/client/build/"));
app.get("/", (req, res) => {
res.sendFile(__dirname + "/client/build/index.html");
});
app.use("/api/users", userController);
const PORT = process.env.PORT || 3001;
app.listen(PORT, () => {
console.log(`Server started on port ${PORT}`);
});
Я вижу, что пользователи создаются, когда я захожу на localhost, перечислены все пользователи, которых я создал с помощью Postman. Но мой MongoDB все еще говорит, что нет базы данных и нет коллекции.