RESTful API

53 阅读3分钟

一、认识REST

什么是REST REST是Representational State Tansfer(表现层状态转移) 的缩写, 如果一个架构符合REST原则,就称它为 RESTful 架构。

什么是RESTful RESTful架构可以充分的利用HTTP协议的各种功能,是HTTP协议的最佳实践。

什么是RESTful API RESTful是一种软件架构风格、设计风格,可以让软件更加清晰,更简洁,更有层次,可维护性更好。

什么是API API是应用程序编程接口,用来连接前后端之间的通信,实现数据的交互。

二、传统模式开发和前后端分离模式对比

1.在传统开发模式中,前端写好静态页面交给后端开发,后端把html渲染或重定向到前端页面
弊端:
1.前后端耦合严重,前端会嵌入后端代码,导致代码混乱,可维护性不高
2.开发人员需要前后兼顾,开发效率不高,周期变长
3.与前端开发人员之间沟通成本高,前后端开发进度相互影响
2.前后端分离模式不只是开发模式,也是web应用的一种架构模式。在开发阶段,前后端人员约定好数据交互接口,即可并行开发与测试,
前端开发完可以独自进行mack测试,后端也可以使用postman等接口测试工具进行测试。最后可进行功能联调测试。
优点
1.可以实现真正的前后端解耦,前后端可以并行开发与测试,提高开发效率
2.减少后端服务器的并发/负载压力,提高系统的性能
3.异步加载的方式,可以更好的应对复杂多变的前端需求
4.前后端代码不再混乱,增强了代码的可维护性

三、RESTful风格

概念:RESTful是一种网络程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义JSON格式定义。最常用的数据格式是JSON,由于JSON,能直接被JavaScript读取,所以使用JSON格式的REST风格的API具有简单、易读、易用的特点。

传统的API

image.png

RESTful的API

image.png

如上述API可见, 当API数量比较多、系统更复杂的时候, 传统的API需要设置非常多, 而RESTful API的好处会越来越明显, 仅仅一个API即可实现GET/POST/PUT/DELETE(增删改查)

RESTful请求方式

image.png

HTTP 状态码是 RESTful API设计重要的一个步, 表示请求的状态

  • 200 OK: 请求成功__表示服务器成功返回用户请求的数据
  • 201 CREATED: 请求成功__表示用户新建货修改数据成功
  • 204 NO CONTENT: 请求成功__表示用户数据删除成功
  • 400 INVALID REQUEST: 请求失败__用户发出的请求有错误或者缺少必要参数
  • 401 Unauthorized: 请求失败__表示认证失败或者缺少授权(令牌,用户名,密码错误)
  • 403 Forbidden: 请求失败__表示没有访问权限
  • 404 Not Found: 请求失败__表示请求的资源不存在
  • 500 Internal Server Error: 请求失败__表示服务器内部出错