REST, Hypermedia & HATEOAS

你一直用 “REST” 这个词。我不认为这意味着你认为它意味着什么。—— Mike Amundsen,REST fest 2012主题演讲。

首先,免责声明。“Django REST framework ” 这个名称早在 2011 年初就已经确定,之所以选择这个名称只是为了确保开发人员能够轻松找到该项目。在整个文档中,我们尝试使用更简单和技术上更正确的 “Web API” 术语。

如果您是认真设计超媒体 API 的,那么您应该查看本文档之外的参考资料,以帮助您进行设计选择。

以下属于“必读”类别。

  • Roy Fielding 的论文 - 架构样式和基于网络的软件体系结构设计。
  • Roy Fielding 的 “REST API 必须是超文本驱动” 博客文章。
  • Leonard Richardson 和 Mike Amundsen 的 RESTful Web API。
  • Mike Amundsen 的使用 HTML5 和 Node 构建超媒体 API。
  • Steve Klabnik 的设计超媒体 API。
  • Richardson 成熟度模型

有关更全面的背景信息,请查看 Klabnik 的 Hypermedia API 阅读列表。

使用 REST framework 构建超媒体 API (Building Hypermedia APIs with REST framework)

REST framework 是一个不可知的 Web API 工具包。它确实有助于指导您构建连接良好的 API,并且可以轻松设计适当的媒体类型,但它并不严格执行任何特定的设计风格。

REST framework 提供了什么 (What REST framework provides.)

不言而喻,REST framework 使构建超媒体 API 成为可能。它提供的可浏览 API 是基于 HTML 构建的 - web 的超媒体语言。

REST framework 还包括序列化和解析器/渲染器组件,可以轻松构建适当的媒体类型,建立连接良好的系统的超链接关系,以及对内容协商的强大支持。

REST framework 没有提供什么 (What REST framework doesn’t provide.)

REST framework 没有做的是默认情况下为您提供机器可读的超媒体格式,如 HAL,Collection + JSON,JSON API 或 HTML 微格式,或者能够自动神奇地创建完整的 HATEOAS 样式 API,其中包括基于超媒体的表单描述和语义标记的超链接。这样做将涉及对真正超出框架范围的 API 设计做出自圆其说的选择。

REST, Hypermedia HATEOAS相关推荐

  1. RESTful Levels HATEOAS

    1. 什么是RESTful REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的.翻译过来就是"表现层状态转化." REST是一种软件架构风格. ...

  2. HATEOAS REST Service

    用户通过点击页面的href的链接地址,而跳转到其他网页,实现浏览网页的过程了. -> 让调用REST的api就可以实现,类似于用户浏览网页的从一个页面跳转到另外一个页面的过程了 -> 而这 ...

  3. 使用 Spring HATEOAS 开发 REST 服务--转

    原文地址:https://www.ibm.com/developerworks/cn/java/j-lo-SpringHATEOAS/index.html?ca=drs-&utm_source ...

  4. 架构之:REST和HATEOAS

    文章目录 简介 HATEOAS简介 HATEOAS的格式 HATEOAS的Spring支持 总结 简介 我们知道REST是一种架构方式,它只是指定了六种需要遵循的基本原则,但是它指定的原则都比较宽泛, ...

  5. 用ASP.NET Core 2.1 建立规范的 REST API -- HATEOAS

    本文所需的一些预备知识可以看这里:  用ASP.NET Core 2.0 建立规范的 REST API -- 预备知识 和  用ASP.NET Core 2.0 建立规范的 REST API -- 预 ...

  6. 使用静态基类方案让 ASP.NET Core 实现遵循 HATEOAS Restful Web API

    Hypermedia As The Engine Of Application State (HATEOAS) HATEOAS(Hypermedia as the engine of applicat ...

  7. HATEOAS的RESTful服务。 超媒体:REST的秘密要素

    在这篇文章中,我们将介绍有关HATEOAS的RESTful服务的综合文章. 超媒体是REST的秘密成分. 1.简介 在本教程的前一部分中,我们花了一些时间来刷新有关REST体系结构样式的基本原理的知识 ...

  8. RESTful服务的第三部分:HATEOAS和Richardson成熟度模型

    by Sanchit Gera 通过Sanchit Gera RESTful服务的第三部分:HATEOAS和Richardson成熟度模型 (RESTful Services Part III : H ...

  9. Spring Boot+HATEOAS快速介绍与示例

    HATEOAS 是什么 HATEOAS , 全称是Hypermedia as the engine of application state , 翻译一下是:超媒体作为应用程序状态引擎, 也翻译成超媒 ...

  10. 为什么HATEOAS?

    来自于一两个简单的问题,总结如下: * 如果超媒体作为应用程序状态引擎:Hypermedia as the Engine of Application State (HATEOAS) 这么酷,为什么没 ...

最新文章

  1. 新年福利 | “社区之星”(社区核心贡献者)成长故事征集
  2. Homebrew--MacOSX下的套件管理器
  3. ios之开发者须知常见简写英文代表的含义
  4. zkcli远程连接_ZooKeeper 学习笔记(二)-API 操作和应用
  5. 增长黑客系列:今天比昨天增长多少?快使用环比函数来分析日志
  6. Java-开源工具类
  7. sap wm内向交货步骤_内向型人在数据科学中成功的五个有效步骤
  8. js 刷新div_vue.js备忘记录(五) vue-router
  9. 在 Windows 下部署 Go 语言环境
  10. Linux 命名空间
  11. 给android开发者的rx,给Android开发者的RxJava 详解,解你多年困扰!
  12. 网站优化快速排名软件大全
  13. Android kernel中wakeup_sources解析
  14. histogram loss笔记
  15. 【Python】 matplotlib 以pdf形式保存图片
  16. 使用经验 1 C++程序由哪些部分构成
  17. win10计算机恢复到一天前,Win10恢复电脑(刷新电脑)的方法步骤图文详解
  18. 网易云易盾朱星星:最容易被驳回的10大APP过检项
  19. 怪物猎人ol服务器维护,腾讯宣布怪物猎人OL停运 12月31日正式关服
  20. matlab空间计量模型AIC和SC,用Matlab进行空间计量模型SDM,SAR计算时的程序包

热门文章

  1. SARS-CoV-2的近端起源
  2. 2019年十大物联网安全事件
  3. 程序人生 - Nature封面:脑机接口突破,可将脑中“笔迹”转为屏幕字句,速度创纪录,准确率超高
  4. 第一篇 关于2012百度开发者技术论坛大会总结
  5. STM32模拟I2C协议获取MLX90614红外温度传感器测温数据(Open Drain管脚配置)
  6. 如何将mkv转换mp4格式?
  7. Thinkpad E430c 无线开关
  8. MATLAB程序中常见的语法错误,Matlab常见语法错误及解决方法
  9. Go语言之error
  10. Godaddy网站SSL证书安装