express.js路由

时间:2011-12-05 21:54:46

标签: node.js routing express

这两条express.js路线是否匹配?

/:campus/:tlf_id/message
/:campus/:message_id/reply

在express.js中,它似乎就是这样。我不确定我是否理解这一点。

也就是说,如果请求/12/90/reply可能会被/:campus/:tlf_id/message抓住?

3 个答案:

答案 0 :(得分:1)

它们不匹配,因为第3个url部分没有以冒号为前缀。前2个冒号前缀将它们转换为命名参数,并匹配/以外的任何内容。第3部分将是必需的匹配。因此,路线的简化RegEx将是/([^/]+)/([^/]+)/message/([^/]+)/([^/]+)/reply

答案 1 :(得分:0)

它们实际上不匹配。两个链接彼此不同。你应该添加:在第3个/之后两个链接都是相同的。

答案 2 :(得分:0)

两条路线的方式不同,但是如果它们执行相同的操作,则应将问题报告给git上的express.js问题