REST全称为Representational State Transfer,意思是表现层状态转移
根据百度百科的解释,RESTful指的是一组架构约束条件和原则,满足这些约束条件和原则的应用程序或设计就是 RESTful
Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求之间的任何时间点重启,客户端不会得到通知
在服务器端,应用程序状态和功能可以分为各种资源。资源是一个有趣的概念实体,它向客户端公开。资源的例子有:应用程序对象、数据库记录、算法等等。每个资源都使用URI得到一个唯一的地址。所有资源都共享统一的接口,以便在客户端和服务器之间传输状态。使用的是标准的 HTTP 方法,比如 GET、PUT、POST 和 DELETE
RESTFUL有以下特点:
1.每一个URI代表1种资源
2.客户端使用GET、POST、PUT、DELETE4个表示操作方式的动词对服务端资源进行操作:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源
3.通过操作资源的表现形式来操作资源
4.客户端与服务端之间的交互在请求之间是无状态的,从客户端到服务端的每个请求都必须包含理解请求所必需的信息
百度百科的解释总体来说还是有些学术化,一时让人不太好理解,笔者在知乎看到了一个比较通俗易懂的解释,短短几句话:
看url就知道要什么
看http method就知道干什么
看http status code就知道结果如何
比百度百科的解释更平易近人