我正在建立一个用户可以销售产品的网站。我开始使用RESTful api,到目前为止我已经:
/Product (Accepts, post)
/Product/[product_id] (Accepts, get, put, delete)
我还想列出所有用户的所有产品,所以我想要:
/Products (Accepts, get)
这是我的问题,我也希望用户查看他们自己的产品,所以我也想到:
/MyProducts (Accepts, get)
我只是认为拥有/ Products& / MyProducts是一样的,除了它们是在用户上过滤的,所以我应该用什么方法来做这个?
我已经考虑过以下内容了,但不知道这是否令人不悦:
/Products (Accepts, get) <- returns all products
/Products/[user_id] (Accepts, get) <- returns all products for a user id.
非常欢迎任何帮助,指示或指导!
由于
克里斯
答案 0 :(得分:4)
彻底简化。实际上只需要两个资源:
/products
/products/{id}
只有这两种资源才能满足您的所有需求:
GET /products
GET /products?showOnlyMine=true
POST /products
会返回Location
/products/{id}
GET /products/{id}
当然,您可以随意使用与showOnlyMine
不同的URI参数。