Javascript Express.js REST API子资源处理
考虑以下(希望是不言自明的)API端点Javascript Express.js REST API子资源处理,javascript,node.js,api,rest,express,Javascript,Node.js,Api,Rest,Express,考虑以下(希望是不言自明的)API端点 /categories/ /categories/:cat_id /categories/:cat_id/products /categories/:cat_id/products/:prod_id 使用Express.js 4.x,我创建了两个不同的路由来服务上述端点,类别和产品。这就是我将它们注册到应用程序的方式 app.use('/', root); // Simple default route app.use('/categories', ca
/categories/
/categories/:cat_id
/categories/:cat_id/products
/categories/:cat_id/products/:prod_id
使用Express.js 4.x,我创建了两个不同的路由来服务上述端点,类别
和产品
。这就是我将它们注册到应用程序的方式
app.use('/', root); // Simple default route
app.use('/categories', categoriesRoute);
app.use('/categories/:cat_id/products', productsRoute);
这样,我就可以让/categories/
、/categories/:cat\u id/products
和/categories/:cat\u id/prod\u id
正常工作。这是我最近的一次。如何在应用程序上注册我的“类别”和“产品”路由器,以使产品成为类别URL的一部分?假设产品总是分配给一个类别,删除“/products”,这样你就得到了/categories/:cat\u id/:prod\u id
。当然,这取决于您的数据结构。我无法获得每个类别的产品列表,这些产品提供在/categories/:cat_id/products
上,虽然我应该更简洁,如果不是类别的产品,则在/:cat_id
上显示什么?在/categories/5/products
上,您可以看到id为5的类别的所有产品。在/categories/5/products/133
上,您可以看到ID为133的产品的详细信息以及ID为5的类别,那么/categories/5
上显示了什么?除非/categories/5
的用例与/categories/5/products
大不相同,否则我会删除附加页面,同时显示类别及其产品的说明。假设产品总是分配给一个类别,删除“/products”,这样您就得到了/categories/:cat\u id/:prod\u id
。当然,这取决于您的数据结构。我无法获得每个类别的产品列表,这些产品提供在/categories/:cat_id/products
上,虽然我应该更简洁,如果不是类别的产品,则在/:cat_id
上显示什么?在/categories/5/products
上,您可以看到id为5的类别的所有产品。在/categories/5/products/133
上,您可以看到ID为133的产品的详细信息以及ID为5的类别,那么/categories/5
上显示了什么?除非/categories/5
有一个与/categories/5/产品
大不相同的用例,否则我会删除附加页面,同时显示类别及其产品的说明。