我面临一个问题。我已经在应用程序路线中创建了一个端点。有一个终点
app.get("/:id",(req,res)=>{
console.log(req.params)
})
还有一些端点,如 localhost:2000/abc、localhost:2000/abfh 等。
问题是当我调用其他端点(例如 localhost:2000/abc)时, localhost:2000/:id 也会在对其他端点的每次调用中接受请求。 取id值为
{ id: 'favicon.ico' }
如何预防?
有什么解决办法吗?
根据提供的信息,我确信您已首先在您的
app.js
中定义了这一点。
app.get("/:id",(req,res)=>{
console.log(req.params)
})
然后你为这些网址定义了路由,如
localhost:2000/abc
, localhost:2000/abfh
。
因此,由于
parametric-route
(在您的情况下为'/:id'
)首先在fixed-path
之前定义(即/abc
,/abfh
),默认情况下,parametric-path
优先于fixed-path
定义,并且优先。
这就是当您请求其他
endpoint
时,它会通过此 /:id
路线接收的原因。
欲了解更多信息,您可以查看以下链接。