我使用node.js v8.11.1并表达4.16.3。
说我有以下路线
app.get('/:id', function(req, res){
我想做类似的事情
if(req.params.id) then query1
else //no id param in the url
query2
因此,我可以转到
http://localhost:3000/
或http://localhost:3000/504
,路由将相应地响应。但是当我去
http://localhost:3000/
时,我只会得到Cannot GET /
如何修复路线?
谢谢
最佳答案
使用?
运算符将路径参数设置为可选。
通过以下更改路线:app.get('/:id?', function(req, res){
现在,它应该同时适用于以下两种:http://localhost:3000/或http://localhost:3000/504
关于node.js - 带有或不带有参数的express.js路由,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50213266/