Express应用程序使用查询参数返回“ Cannot GET /”

时间:2019-02-16 19:00:23

标签: javascript node.js express

我正在尝试编写非常简单的nodejs express应用程序,但是在带有查询参数的路由请求上失败。这是一个很短的代码:

const express = require('express');
const app = express();

app.get('/', (req, res) => {
    res.send('hello express');
});
app.get('/user/:id', (req, res) => {
    res.send(req.params.id);
});

app.listen(3000, () => {
    console.log('Start listening at 3000');
});

第二个“获取”返回“无法获取/用户”。 我在做什么错了?

3 个答案:

答案 0 :(得分:0)

第二个GET期望使用类似/user/1/user/arup之类的东西。:id必须替换为某些东西,并且必需部分网址。这就是为什么只有/user给您 404 的原因。这称为动态网址。

答案 1 :(得分:0)

路由/user/:id不需要 query 参数,而是需要路由参数。表示它期望/user/4384而不是/user?id=4384

答案 2 :(得分:0)

您应该尝试:

app.get('/user' && id, (req, res) => {
res.send(req.params.id);
});