API架构流行的原因:web程序分为前后端两个部分,当前的发展趋势就是前端设备越来越多,而API机制就可以为不同的前端设备与后端通信提供一种简单方便的解决方案。
REST的定义:它的全称为Representaltional State Transfer,翻译为“表现层状态转化”
资源
其中的表现层其实指的就是“资源”的表现层,所谓资源,就是网络上的一个具体信息,可以是文本,图片等。要获取资源就需要调用其唯一的URI(统一资源定位符)
表现层
即资源呈现出的形式
状态转化
上网,即为客户机与服务器之间的交互。http是无状态的,即所有的状态都保存在服务器端,必须通过某种手段,让服务器端发生“状态转换”。而这种转换时建立在表现层之上的,所以就是“表现层状态转换”
Http协议的四个请求方式:
- GET用来获取资源
- POST用来新建资源(也可以用来更新资源)
- PUT用来更新资源
- DELETE用来删除资源
以此,可以认为,RESTful架构是利用客户端通过HTTP的四种访问方式对服务器资源进行操作,实现“表现层状态转化”
REST API设计细节:
- 协议
- 域名
- 版本
- 路径
- HTTP动词
- 过滤信息
- 状态码
- 错误处理
- 返回结果