支持SQL类似REST API集合的过滤器

时间:2013-11-17 03:40:48

标签: api rest

REST API设计在涉及/product/{id}/products(集合)等基本资源时似乎很简单。

但在现实世界中,您需要能够过滤您的收藏。例如,显示price > 500price < 1000

的产品

我想我的问题是如何将类似SQL的语法建模到REST API中,因此您可以使用MAXMINAND,{{1}进行复杂的集合过滤} {,OR><<=>=sort byasc

如何使用查询字符串干净地表示该逻辑,因此您的API仍然可读并且看起来不像这样:

desc

如果您仔细查看上面的查询示例,它会使用数组将过滤器从客户端传输/编码到API,以便可以从查询字符串中轻松提取数据并在API端进行处理。同时它完全破坏了可读性,使API在没有SDK的情况下完全没用。

我努力在客户端上使用查询字符串构建复杂的集合过滤器并保持API干净之间找到合适的平衡点。

0 个答案:

没有答案