如何为API支持多个order-by值?

时间:2015-02-04 18:45:04

标签: php mysql api api-design

我想添加按房间的多个字段排序/排序的功能。解决这个问题的简单方法是:

/getRooms?order_by=price:ASC
/getRooms?order_by=price # implied ASC

但是,如果我想要先按价格排序房间,然后再按另一个字段排序呢?

/getRooms?order_by=price:ASC,rating:DESC

哪个会在内部创建sql:ORDER BY price ASC, rating DESC

虽然如果我查看一些API(youtube,ebay),我似乎没有看到任何多个值的例子用于排序?有什么特别的原因,或者我只是看得不够深?

此外,使用“+”或“ - ”代替ASC或DESC是否有意义?模仿亚马逊如何做到这一点:

http://docs.aws.amazon.com/AWSECommerceService/latest/DG/APPNDX_SortValuesArticle.html

所以/getRooms?order_by=-price,+rating或者这会让它更加混乱,因此我应该坚持ASCDESC

0 个答案:

没有答案