Javascript 路线不';我不能在快车上工作
我有两条路线Javascript 路线不';我不能在快车上工作,javascript,node.js,express,parameters,routes,Javascript,Node.js,Express,Parameters,Routes,我有两条路线/email和/eamils/:id: var createRouter = function() { var router = express.Router(); router.route('/emails/:id').get((req, res) => { console.log('get=>/emails/id'); }); router.route('/emails').get((req, res) => { consol
/email
和/eamils/:id
:
var createRouter = function() {
var router = express.Router();
router.route('/emails/:id').get((req, res) => {
console.log('get=>/emails/id');
});
router.route('/emails').get((req, res) => {
console.log('get> /emails');
});
return router;
}
无论何时发送下一个请求,都会调用第二个处理程序:
GET http://localhost:4000/rest-api/emails/?id=59
第一个接受
id
参数的参数永远不起作用。如何解决此问题?正确的url应为:
http://localhost:4000/rest-api/emails/59
而不是:
http://localhost:4000/rest-api/emails/?id=59
这里的id是查询参数。您需要使用:
http://localhost:4000/rest-api/emails/59
查询参数不计算。
http://localhost:400/rest-api/emails/59
是正确的。您使用的是参数,而不是查询
如果要使用查询,则在?
签名后,它们的用法如下所示
http://localhost:400/rest-api/电子邮件?id=59
您能提供更多信息吗?不工作意味着什么?你是如何发送请求的?你知道你能做到的。get(“/emails”,(req,res)=>…)你的意思是忘记console.log('get>/emails)之后的结束单引号吗代码>?只是想确保这不是一个真正简单的错误输入。