从REST服务中检索复杂查询的最佳方式是什么?什么是创建RESTful复杂查询的最佳方式?
假设我想获得X个集合,对每个集合应用过滤器和等式,使用其他操作合并集合并返回一个结果,所有内容都在一个请求中。
因为我可以结合超过300个集合(加上运算符和过滤器到每个集合),所以将所有内容都放在查询字符串中太复杂(并且很大)。
我想过使用POST发送描述查询到像一个XML对象:
http://mydomain/collections/complexQuery
它会返回一个唯一的ID,然后我可以使用GET检索complexQuery结果:
http://mydomain/collections/complexQuery/{queryId}
杰森S:
这就是这个想法。 POST将采用查询的XML表示形式,其中已有“where”参数(它们可能太多)。查询将仅在GET到达时执行。我可以让查询对象在一段时间内可用并在以后删除它。
这是一个很好的解决方案吗?我仍然这么做RESTful吗?