因为大家可能已经注意到,有许多疯狂的假/基本的REST的API(它实现HTTP-API,并称之为REST不遵循超文本作为最发动机的应用程序状态的要求,这导致的在罗伊T.菲尔丁的著名言论 ,谁第一个指定的REST范式)的人。
我一直无法找到一个真正的超文本驱动的REST-执行任何实际的例子与状态转换相关的应用程序特定的媒体类型的定义。
是否有这样实现的任何可公开访问的例子吗?
因为大家可能已经注意到,有许多疯狂的假/基本的REST的API(它实现HTTP-API,并称之为REST不遵循超文本作为最发动机的应用程序状态的要求,这导致的在罗伊T.菲尔丁的著名言论 ,谁第一个指定的REST范式)的人。
我一直无法找到一个真正的超文本驱动的REST-执行任何实际的例子与状态转换相关的应用程序特定的媒体类型的定义。
是否有这样实现的任何可公开访问的例子吗?
它不是在运行代码意义上的实现,但我真的很喜欢文章“ 如何获得一杯咖啡相关的”。 它描述订购星巴克咖啡为REST协议的过程。 这超越了典型的“一切资源”休息介绍性的文章,注重HATEOAS。 强烈推荐。
如何对Sun云API ? 从介绍:
该API前提在URI空间没有特别的结构。 起点是一个URI,由云服务提供商,它标识云本身提供。 云的表示包含在云中的其它资源的URI,并且还对于可能对他们进行(例如部署和启动的虚拟机)的操作。
该背景故事或许也有帮助。
Netflix公司有一个REST API基于HATEOAS包含的链接作为资源的一部分。
是不是Sun云API在罗伊的第四点实际上解决的RESTfulness:
一个REST API一定不能定义固定的资源名称或层次结构(客户端和服务器的一个明显的耦合)。 服务器必须可以自由地控制自己的命名空间。 相反,允许服务器指示如何构建相应的URI的客户,如HTML表单和URI模板完成后,通过定义介质类型和链接关系中的那些说明。 [在此失败意味着客户端被假定的资源结构,由于带外信息,诸如特定于域的标准,这是面向数据的相当于RPC的功能耦合的。
在限定heirachy 实施例1固定资源名称:
从Sun Cloud的API:“......一个VDC的代表将包括居住它集群,而这又包括每个群集内的虚拟机的表示表示。”
实施例2外的频带的信息,诸如特定于域的标准:
你必须有维基页内容(出带外信息),要知道,“资源沟通机制”,为云资源领域“URI”是GET。
我意识到这是问前一段时间,但我花了刺伤展示了一个简单的例子是“适当的” REST API流量。 我试图按照罗伊对REST规则-或许可以帮助: 使用REST API实例