我正在尝试为酒店预订实施基于HATEOS的REST服务,但却有这样的困惑:
1)除了WADL之外,客户端如何了解可能的操作及其相应的URI。当客户端访问REST服务的根目录时,我应该将所有可能的操作和URI作为响应吗?
2)当客户获得某个地区所有住宿选择的清单时,我将返回他询问的地区所有酒店的清单。回复包含:
<accommodation>
<hotel info="http://welco.me/hotel/xxxxxx" price="5000"/>
<hotel info="http://welco.me/hotel/yyyyyyy" price="3000"/>
</accommodation>
但我在这里的查询是客户如何知道其他相关的可能操作,比如按价格的排序顺序获取列表?
答案 0 :(得分:2)
答案 1 :(得分:0)
您应该使用 link hints。使用OPTIONS
方法执行此操作的较旧方法是some长期caveats。
包含使用自定义链接关系的链接,例如http://welco.me/#sort-by-price
,您可以在其中定义URI以表示您想要的任何内容。您应该在该URI上提供一些开发人员文档,但客户端应用程序永远不会取消引用它,它只是使用URI作为不透明字符串进行相等比较。