REST API是一个开发中经常会遇到的名词,但是我并没有系统性或者针对性去了解到底是什么。所以我自己只能去学,并为此总结了学习过程当中的知识,欢迎评论区指出纠正。
什么是REST API
REST 或者RESTful 是互联网语言,英文全称Representational State Transfer,即表述性状态转移,是一种用于构建分布式系统的架构风格,常用于网络开发和需要交流的系统进行沟通的方法。
REST API 是一个接口,用于两个或者多个计算机系统之间的数据交换。比如:HTTP的GET、PUT、POST 和DELETE 请求。通过URI 即Uniform Resource Identifier,统一资源标识符,定位资源。
为什么要使用REST API
1. 宽带受限
使用REST API 的请求快,轻量,即使宽带有限时也能很高效。
2. 易于编码
REST API 服务的编码和实现比SOAP(Simple Object Access Protocol,简单对象访问协议)更容易。
3. 易于整合
任何客户端都可以使用REST API 应用程序,即使这些应用不是专门为使用REST API 设计的。
4. 缓存
REST使缓存变得更容易,因为服务器是无状态的,并且是可以单独处理请求,使它们更容易缓存。
REST API 结构
Router 路由器
将请求传递到相应的Controller 的Express Router
Controller 控制器
Controller 处理与HTTP 或者HTTPS 相关的所有内容
Service Layer 服务层
Service Layer 即服务层具有业务逻辑并可以导出Controller 所使用的服务和方法。
Data Access Layer 数据访问层
数据访问层就是与数据库交互的地方。
具体看下图:
REST API 的好处
1. 独立
客户端和服务器哦都是独立的。换一句话说,REST 协议使得数据存储和UI 与服务器分离了。
2. 可扩展性
因为客户端和服务器是分离的,REST API 可以由开发者毫无困难地进行扩展。
3. 灵活性
开发者很容易理解和实现,它与格式无关,能够被用于XML、JSON、HTML等,并且易于修改。
总结
我是真的没有想到,我平常对接的接口有这么多知识和概念需要了解和学习,以上就是我今天学习到的关于REST API 的知识,之后学到更多了也会发出来跟大家分享的。
那么我是捞佬,我们下次再见!