什么是 RESTful ?

REST 全称是 Representational State Transfer,中文意思是表述性状态转移(注:通常译为表征性状态转移)。 它首次出现在 2000 年 Roy Fielding 的博士论文中,Roy Fielding 是 HTTP 规范的主要编写者之一。

Roy Fielding 在论文中提到:“我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构。REST 指的是一组架构约束条件和原则。” 如果一个架构符合 REST 的约束条件和原则,我们就可以称之为 RESTful 架构。

通俗地讲:RESTful 就是客户端与服务器进行数据交互的一种规范,而且是当今绝大多数开发者都在遵循的规范

应用 RESTful 架构,可以想像成读者去图书馆找书,读者相当于客户端,图书馆相当于服务器。不同种类的书籍,对应不同分类,且有固定的分类缩写。如编号以 T 开头的图书,表示工业技术类图书,编号以 J 开头的图书,表示艺术类图书。不管去哪一个图书馆,这些分类缩写都是相同的,任何一位读者只要知道图书种类,就可在标有相应分类缩写的书架区域找到相应书籍。RESTful 就是 Web 开发行业的规范,符合这种规范,就是一套 RESTful 架构