node.js - 无法获取 /api/signup - 使用 Postman 和 mongodb
问题描述
我对 mongoose 很陌生,我制作了一个注册 api,在使用 POSTMAN 对其进行测试时,当我刷新我的http://localhost:8000/api/signup时,我也收到了这些奇怪的错误,我收到一条消息说“无法获取/api/signup”,在我的邮递员发布请求中,我看到一条错误消息,上面写着“无法发布 /api/signup”。
我将如何摆脱这些正在显示的消息?
我正在学习一个教程,所以我尝试从 GitHub 复制和粘贴代码以确保一切都很完美,但我仍然看到这些错误消息。
我的 app.js 文件是:
const express = require("express");
const mongoose = require("mongoose");
const morgan = require("morgan");
const bodyParser = require("body-parser");
const cookieParser = require("cookie-parser");
require("dotenv").config();
// import routes
const userRoutes = require("./routes/user");
// app
const app = express();
// db
mongoose
.connect(process.env.DATABASE, {
useNewUrlParser: true,
useCreateIndex: true
})
.then(() => console.log("DB Connected"));
// middlewares
app.use(morgan("dev"));
app.use(bodyParser.json());
app.use(cookieParser());
// routes middleware
app.use('api', userRoutes);
const port = process.env.PORT || 8000;
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
});
我的 routes/users.js 文件是:
const express = require("express");
const router = express.Router();
const { signup } = require("../controllers/user");
router.post("/signup", signup);
module.exports = router;
我的控制器/users.js 是:
const User = require("../models/user");
exports.signup = (req, res) => {
console.log("req.body", req.body);
const user = new User(req.body);
user.save((err, user) => {
if (err) {
return res.status(400).json({
error
});
}
res.json({
user
});
});
};
我希望在我的浏览器中看到一个没有显示图像的响应,该图像显示无法获取 api/注册,我希望邮递员能够从我的 api 返回数据
解决方案
My issue was that when I installed mongoDB locally I had not properly installed it and was not using a /data/db folder. I was able to fully uninstall my older version of mongoDB and reinstall everything following this youtube tutorial: https://www.youtube.com/watch?v=MIByvzueqHQ
推荐阅读
- python - 无法使用 PyQt5 获取 html
- sql - 将带有空格的字符串连接到 varchar(255) 列中
- google-cloud-platform - 使用 terraform 将 IAM 政策分配给 Google 云中的现有 Cloud Build 服务帐户失败
- python-3.x - 我想弄清楚如何在 python 3 中添加图像,这段代码也不起作用,我也在 mac 上这样做
- tensorflow - 无法返回 val_accuracy,仅使用生成器接收验证数据的 acc
- c# - 错误 CS0234:命名空间“System.DirectoryServices”中不存在类型或命名空间名称“AccountManagement”(CS0234)
- vue.js - 多个组件中的 Vue 3 组合 API 重用
- html - 以网格格式显示复选框
- azure - 如何在 ADLS gen2 中不使用 RBAC 来设置 ACL?
- azure-ad-b2c - 在审核或登录日志中找不到关联 ID