Node.js / Intellij: http post 请求 returns 代码 404
Node.js / Intellij: http post request returns code 404
我在测试 http 方法时收到此响应:
http://localhost:3000/rooms
HTTP/1.1 404 Not Found
这是我的路由/端点的代码
router.post('/rooms', bodyparser.json(), (req, res) => {
let rooms;
try {
rooms = {
id:req.body.id,
name: req.body.name
};
createRessource(filename)
res.status(201).send(rooms);
} catch (error) {
res.sendStatus(500)
}
refresh();
});
我是这样用intellij编辑器测试的:
POST http://localhost:3000/rooms
Content-Type: application/json
{ "name": "Peter", "id": 4}
http://localhost:3000/rooms 不是正确的端点吗?此端点的获取请求是 o.k
很确定 IntelliJ 在这里没有错,因为我已经在它上面制作了许多 API(主要是 express)。如果我是你,我首先要检查的是我的应用程序正在侦听哪个端口。
我假设您使用的是 express(一些原因,例如使用 body-parser)
你在 app.listen(port)
中设置了什么端口?也许你把端口 80?
好吧,考虑到您实际上收到了 404,我会把它划掉。
接下来是您让应用程序使用路由器的方式。
记住,如果你做了类似
的事情
app.use(router, "/api")
在路由器中
router.post("/rooms", function)
那么你的最终 url 到 post 将是 /api/rooms
而不仅仅是 /rooms
。所以我建议你在你的应用程序上使用什么。如果您不想放置任何预设路径,那么只需执行
app.use(router)
我在测试 http 方法时收到此响应:
http://localhost:3000/rooms
HTTP/1.1 404 Not Found
这是我的路由/端点的代码
router.post('/rooms', bodyparser.json(), (req, res) => {
let rooms;
try {
rooms = {
id:req.body.id,
name: req.body.name
};
createRessource(filename)
res.status(201).send(rooms);
} catch (error) {
res.sendStatus(500)
}
refresh();
});
我是这样用intellij编辑器测试的:
POST http://localhost:3000/rooms
Content-Type: application/json
{ "name": "Peter", "id": 4}
http://localhost:3000/rooms 不是正确的端点吗?此端点的获取请求是 o.k
很确定 IntelliJ 在这里没有错,因为我已经在它上面制作了许多 API(主要是 express)。如果我是你,我首先要检查的是我的应用程序正在侦听哪个端口。
我假设您使用的是 express(一些原因,例如使用 body-parser)
你在 app.listen(port)
中设置了什么端口?也许你把端口 80?
好吧,考虑到您实际上收到了 404,我会把它划掉。
接下来是您让应用程序使用路由器的方式。
记住,如果你做了类似
的事情app.use(router, "/api")
在路由器中
router.post("/rooms", function)
那么你的最终 url 到 post 将是 /api/rooms
而不仅仅是 /rooms
。所以我建议你在你的应用程序上使用什么。如果您不想放置任何预设路径,那么只需执行
app.use(router)