Javascript Nodejs:无类型声明的路由 我用膝关节炎来创建路由器。我们声明了两个路由器,如下所示 app.get('/order/:id',异步ctx=>{ const{id}=ctx.params; 试一试{ const data=wait order.findOne({ 其中:{order_id:id} }); ctx.body=数据; }捕获(e){ ctx.body=e.message; } }); app.get('/order/customer',异步ctx=>{ const{id}=ctx.request.user; 试一试{ const data=wait order.findOne({ 其中:{customer_id:id} }); ctx.body=数据; }捕获(e){ ctx.body=e.message; } });

Javascript Nodejs:无类型声明的路由 我用膝关节炎来创建路由器。我们声明了两个路由器,如下所示 app.get('/order/:id',异步ctx=>{ const{id}=ctx.params; 试一试{ const data=wait order.findOne({ 其中:{order_id:id} }); ctx.body=数据; }捕获(e){ ctx.body=e.message; } }); app.get('/order/customer',异步ctx=>{ const{id}=ctx.request.user; 试一试{ const data=wait order.findOne({ 其中:{customer_id:id} }); ctx.body=数据; }捕获(e){ ctx.body=e.message; } });,javascript,node.js,routes,koa,Javascript,Node.js,Routes,Koa,第一个是一个查询,它选择一个order by order_id,第二个是一个查询,它选择具有中间件验证的id的用户的订单 curlhttp://localhost:3000/order/1 当我在上面输入时,order_id是1 curlhttp://localhost:3000/order/customer 但是,与我的意图不同,当我输入上述内容并检查查询时,订单id被称为customer。我有没有办法简化url,使/order/customer可用 如果您有我在问题中遗漏的任何问题,或者您可

第一个是一个查询,它选择一个order by order_id,第二个是一个查询,它选择具有中间件验证的id的用户的订单

curlhttp://localhost:3000/order/1

当我在上面输入时,order_id是1

curlhttp://localhost:3000/order/customer

但是,与我的意图不同,当我输入上述内容并检查查询时,订单id被称为
customer
。我有没有办法简化url,使
/order/customer
可用


如果您有我在问题中遗漏的任何问题,或者您可以帮助我,请评论或回复。

您遇到了路线顺序定义的问题。您应该先有特定的路径路由,然后才有动态路由。在这里,我指的是
/:id

'/order/customer' // first
'/order/:id' // later

您遇到了路由定义顺序的问题。您应该先有特定的路径路由,然后才有动态路由。在这里,我指的是
/:id

'/order/customer' // first
'/order/:id' // later

切换路线的顺序。更具体的应该在更一般的之前。切换路线的顺序。更具体的应该先于更一般的。这是一件简单的事情。谢谢你的回答。这是一件简单的事。谢谢你的回答。