有没有RESTful方法来描述过滤集合的URL?

有没有RESTful方法来描述过滤集合的URL?,rest,Rest,如果我有一个表示集合的URL,有没有一个好的方法来描述过滤器 e.g. http://example.com/comic_books?after=2001-01-01&before=2002-03-09 如果我将这些过滤器作为服务合同的一部分,我是否违反了超媒体作为应用程序状态引擎的理念 我需要有另一个链接到我的集合的资源,并描述过滤器,例如通过HTML表单?< P>你可以把HTML表单看作是代表你的资源和过滤器的URL模板,这没有什么不对的,我们每天都这样做(谷歌.com)=查询。有

如果我有一个表示集合的URL,有没有一个好的方法来描述过滤器

e.g. http://example.com/comic_books?after=2001-01-01&before=2002-03-09
如果我将这些过滤器作为服务合同的一部分,我是否违反了超媒体作为应用程序状态引擎的理念


我需要有另一个链接到我的集合的资源,并描述过滤器,例如通过HTML表单?

< P>你可以把HTML表单看作是代表你的资源和过滤器的URL模板,这没有什么不对的,我们每天都这样做(谷歌.com)=查询。有人认为,您不需要表单来表示URL模板,文档本身就足够了,因此对于许多人来说,表单本身是可选的

超媒体方面主要与链接本身的存在有关。记录服务不是“带外”考虑因素。不过,您想要的是将链接选项作为超级媒体的一部分呈现给客户机,以便客户机可以遵循。表单可以很好,但不是必需的。您可以为过滤器使用(甚至需要)相同的链接和查询参数,而无需将它们明确列为有效负载的一部分


认为HAL是HTML的替代品,它没有表单的概念,但许多人认为它是一个优秀的超媒体兼容媒体类型。

这里我谈到:这是一个非常有趣的答案,但是我的过滤器相对简单,我认为不应该把建模作为一流的资源。我并不是像其他提问者那样,试图避免每次提交的“开销”,只是试图减少带外协调的数量。我倾向于将查询参数视为穷人的媒体类型,也就是说,API的消费者需要理解一组允许的片段和相应的语义,才能与服务交互。