2012-08-10 65 views
1

我正在使用REST接口,但不确定在集合上构造“获取第一个/最后一个元素”的最佳方式?REST结构;获得收藏的第一个/最后一个元素?

例如,不同的选择可能是:

GET cart/product?id=first_element 

GET cart/products?filter=first_element 

... something else? 

如果有这样的一个“标准”的方式,是什么呢?如果没有标准的方式,你会怎么做,为什么?

干杯,

回答

1

我会使用第二个选项:

GET /cart/products?filter=first_element 

id应预留的身份。

你也可以做这样的事情:

GET /cart/products/12 # a product identified by ID 
GET /cart/products/first # a product identified by a pseudo ID 
GET /cart/products/last # a product identified by a pseudo ID 
+0

这就是我的想法,但后来我们就需要查询两种资源,而不是一个,这似乎对我不好 - 我应该担心这还是“正常”? – Eva 2012-08-10 10:30:26

+0

为什么两个?哪里? – 2012-08-10 10:31:18

+0

那么“GET/cart/products?filter = first_element”会返回类似“/ cart/products?id = ”的内容,然后我们需要检查该资源以获取信息,而“/ cart/product? id = first“会直接返回产品信息,不是? – Eva 2012-08-10 10:33:40