作者:禅与计算机程序设计艺术
1.简介
在这个互联网发展的过程中,API(Application Programming Interface,应用程序编程接口)已经成为“IT行业”必备的技能之一,作为开发人员、测试人员、运维人员、产品经理等在不同岗位之间沟通交流的桥梁。REST(Representational State Transfer,表现层状态转移)是一个架构风格,它基于HTTP协议,定义了一套用于Web服务的接口标准,通过对资源的操作进行一系列的HTTP方法实现对资源的访问和管理。RESTful API是指符合REST规范的API。使用RESTful API可以使得服务的功能更加易用、更加灵活、方便使用,从而提升服务的可用性和用户体验。
有了RESTful API后,APIServer可以帮助我们对外提供RESTful API,供外部客户端或其它组件调用。在实际的应用场景中,往往需要根据业务需求设计相应的API,比如电商网站的商品数据查询,微博、微信公众号的消息发布订阅等等。由于业务场景的不断变化,所以API的更新频率也会越来越高,如何快速响应客户的请求,保证其顺利使用APIServer是非常重要的。
为何要把APIServer作为一个独立模块?为什么不能直接将API放到业务系统的APIServer上?现在的大多数公司都采用前后端分离的架构模式,因此为了能够让前端工程师独立于后端开发,并可以更好地进行开发工作,就需要有一个独立的APIServer模块对外提供RESTful API。而对于一般的企业级系统来说,它往往会集成很多不同的服务,这些服务又需要向外提供统一的API接口,那么APIServer模块就起到了承上启下的作用,充当了一个粘合剂,把各个服务连接起来