你好,我有一个问题,我建立了一个项目,当我开始添加服务器端我正在使用节点js Express,我创建了从数据库(MongoDB)到特定URL的抓取帖子,我现在想添加用户,但我试图重新配置文件,并使用路由器,现在我得到404当我试图使帖子是上传一些代码
只需要知道错误的请求在哪里我想获取的URL是http://localhost:5000/shopping-cart/user/sign-up
Axios.post("http://localhost:5000/shopping-cart/user/sign-up", user).then((response) => {
console.log(response);
});
const express = require("express");
const app = express();
const mongoose = require("mongoose");
const path = require("path")
const productRouter = require("./routes/product.route");
const userRouter = require("./routes/user.route");
const { setServerConfiguration } = require("./config");
setServerConfiguration(app);
mongoose.connect('mongodb://localhost/shopping-cart-data-base');
app.use("/shopping-cart", productRouter);
app.use("/user/sign-up", userRouter);
app.listen(5000);
const router = require('express').Router();
const errorsHandler = require('../utils/errorsHandler');
const UserModel = require('../models/User');
router.post("/user/sign-up", async (req, res) => {
let body = req.body;
console.log(body)
try{
await UserModel.create({
name: body.name,
username: body.username,
password: body.password,
shoppingHistory: [],
});
res.send(body);
}catch(e){
return errorsHandler(e, req, res);
}
});
module.exports = router;
3条答案
按热度按时间tzdcorbm1#
您的路由器安装在
/user/sign-up
前缀上:这意味着所有以
/user/sign-up
开头的请求都将传递到您的路由器。您的路由器应该根据该前缀进行相对路由,因此要使其正常工作,请使用以下命令:
hkmswyz62#
请尝试此URL
如果要使用“http://localhost:5000/shopping-cart/user/sign-up”,则需要像这样定义路由,例如:
nuypyhwy3#
未找到404路由
路由1其他路由2
URL http://localhost:5000/shopping-cart请求路由1
Url http://localhost:5000/user/sign-up请求路由2