REST,Hypermedia&HATEOA-Django REST框架
休息、超媒体和食盐
你一直用“休息”这个词。我不认为这是你认为的意思。
-迈克·阿蒙森REST 2012主题演讲.
首先,免责声明。“Django REST框架”的名称早在2011年初就决定了,只是为了确保开发人员很容易找到该项目。在整个文档中,我们尝试使用更为简单和技术正确的术语“WebAPI”。
如果您是认真设计超媒体API,您应该查找本文档之外的资源,以帮助通知您的设计选择。
以下内容属于“必读”类别。
要获得更详细的背景,请查看Klabnik的超媒体API读取列表.
用REST框架构建超媒体API
REST框架是一个不可知的WebAPI工具包。它确实有助于指导您构建连接良好的API,并使设计适当的媒体类型变得容易,但它并不严格执行任何特定的设计风格。
REST框架提供了什么。
不言而喻,REST框架使构建超媒体API成为可能。它提供的可浏览API是建立在HTML之上的--网络的超媒体语言。
REST框架还包括串行化和解析器/渲染器组件,这些组件可以轻松地构建适当的媒体类型,超链接关系建立连接良好的系统,并支持内容协商.
REST框架没有提供什么。
REST框架没有为您提供机器可读的超媒体格式,例如哈尔, 集合+JSON, JSON API或HTML微格式默认情况下,或者自动创建完全HATEOA风格的API的能力,其中包括基于超媒体的表单描述和语义标记的超链接。这样做将涉及对API设计做出固执己见的选择,而这些选择实际上应该保持在框架的范围之外。
网友评论