REST(Representational State Transfer,表现层状态转化)
是一种轻量级、跨平台、跨语言的WEB服务架构风格或架构设计。如果一个架构符合REST原则,就称它为RESTful架构。
其主要原则如下:
- 网络上的所有事物都被抽象为资源
- 每个资源都有一个唯一的资源标识符
- 同一个资源具有多种表现形式(XML,JSON等)
- 对资源的各种操作不会改变资源标识符
- 所有的操作都是无状态的
互联网通信协议HTTP协议,是一个无状态协议。这意味着,所有的状态都保存在服务器端。因此,如果客户端想要操作服务器,必须通过某种手段,让服务器端发生”状态转化”(State Transfer)。而这种转化是建立在表现层之上的,所以就是”表现层状态转化”。
客户端用到的手段,只能是HTTP协议。具体来说,就是HTTP协议里面,四个表示操作方式的动词:
GET、POST、PUT、DELETE。
它们分别对应四种基本操作:
- GET 获取资源
- POST 新建资源(也可以更新资源)
- PUT 更新资源
- DELETE 删除资源
HTTP方法 资源操作 幂等性 安全性 GET SELECT 是 是 POST INSERT 否 否 PUT UPDATE 是 否 DELETE DELETE 是 否
RESTful用法:
- http://127.0.0.1/user GET 获取用户列表
- http://127.0.0.1/user/1 GET 根据用户id查询用户数据
- http://127.0.0.1/user POST 新增用户
- http://127.0.0.1/user PUT 修改用户信息
- http://127.0.0.1/user DELETE 删除用户信息