我在下面有一个简单的快速路线。
const express = require('express');
const api = express.Router();
api.get('/vacancies', vacancies.getAllVacancies);
api.get('/vacancy/:id', vacancies.getVacancyById);
我打算在req.params.id
中使用getVacancyById
。但是,getAllVacancies
有效,但调用路径
/vacancy/?id=1 is never recognized . I tried vacancy?id=1 many things it just never get called. The route is not recognized at all.
请问我做错了什么?任何帮助将不胜感激
答案 0 :(得分:3)
我会为这个问题提出2个解决方案:
解决方案1 (推荐):
使用api.get('/vacancy/:id', ...
& req.params.id
并通过/vacancy/1
解决方案2:
使用api.get('/vacancy', ...
& req.query.id
并通过/vacancy/?id=1
答案 1 :(得分:1)
因为你的/?id是一个查询参数。获取id的值使用req.query.id 或者,如果你想在req.params中使用id的值,你的网址应该是/ vacancy / 1而不是/ vacancy /?id = 1