#(网站-网页端-web端-web应用-webAPP)REST-RESTful 前端
梗概
- RESTful是一种基于HTTP协议的Web API设计风格
适用范围
场景
- 小应用,不会发生太过根本性的重构
- 快速开发
优点:
缺点:
- 极度依赖于API文档
- RESTful API 的设计需要遵循一定的规范,否则会导致接口定义过轻,很容易导致定义文档与实际实现不一致导致服务集成时的问题。
- RESTful API 的设计需要考虑到资源的表述,这会增加开发人员的工作量。
- 过度获取
- 服务器一次全部响应所有的内容,造成浪费
- 获取不足
- 服务器响应的内容通常是深层次的,但只服务器返回表层内容,需要客户端自己多次深入内层
- 服务器返回的内容通过另一个web api指向下层内容
- 服务器响应的内容通常是深层次的,但只服务器返回表层内容,需要客户端自己多次深入内层
两个核心:
RE表示网络资源以某种形式展现(representational)出来
ST表示带状态的传输(State Transfer):
六个约束
它的设计原则包括六个约束,分别是:
- 统一接口⭐
- 客户端和服务端之间交互的通用方式,包括URI、资源操作和资源表述三个方面。
- 客户端-服务端分离
- 前后端分离
- 无状态
- 服务端不应该保存客户端的状态。
- 客户端请求必须包含所有必要的信息
- 可缓存
- 客户端可以缓存服务器响应,以减少网络传输。
- 分层系统
- 客户端不需要知道整个系统的架构,只需要知道与它相邻的层即可。
- 按需代码
- 可选的约束,允许服务端在适当的时候向客户端传输代码,以扩展客户端功能。
各种操作的实现方式
增改
child::http PUT
删
child::http DELETE
查
child::http GET