我有通过用户ID获取用户的路径:
/user/{id}
然后将其转换为regexp:
pathToRegexp(path.replace(/\{/g, ':').replace(/\}/g, ''))
然后将其与
进行比较const matchedPaths = this.map.filter((obj: mapper) =>
requestUrl.match(obj.regexp)
)[0]
但是当我去/user/count
时,它以为我要去/user/{id}
。
答案 0 :(得分:0)
它将假定您要传递的任何参数。如果使用了相同的HTTP动词。 GET user / {id}-> GET use / regEx(anything)::将regEx(anything)作为参数。
app.get('/:id', function (req, res) {
res.send(req.params.id)
})
app.get(/.*fly$/, function (req, res) {
res.send('/.*fly$/')
})
app.get(/.*plane$/, function (req, res) {
res.send('/.*plane$/')
})
仅“ /:id”->将运行::
否则,两者都将运行::