API(应用程序编程接口)是现代软件开发中不可或缺的一部分,它允许不同的软件应用之间进行交互和通信,根据服务对象、技术形式以及使用者的不同,API可以被划分为多种类型。
一、基于服务对象的类型划分
1、公有型API:
主要面向企业外部客户或第三方合作伙伴,提供企业的API服务能力。
以业务承载为主,如开放API或外部API,允许任何外部开发人员或企业使用。
2、私有型API:
面向企业内部,不向外部提供服务能力,具有一定的私密性。
主要用于运营管理、内部服务支撑等场景。
3、混合型API:
服务对象没有明显限制,既可供企业内部使用,也可供外部客户调用。
4、合作型API:
仅供特定选择和授权的外部开发人员或API使用者使用,促进企业间的合作活动。
5、内部API:
仅用于企业内部连接业务内的系统和数据,传统上表现出较弱的安全性和身份验证。
6、复合API:
将两个或多个API组合在一起,以生成一系列相关或相互依赖的操作。
二、基于技术形式的类型划分
1、RESTful API:
当前业界主流的API技术形式,依赖于HTTP协议,使用常见的HTTP动词(GET、POST、PUT、DELETE)对资源进行操作。
设计简单直观,易于理解和使用,具有良好的扩展性和灵活性。
2、GraphQL API:
采用Facebook提出的GraphQL查询语言构建API服务,适用于树状、图状结构数据的使用场景。
强类型、单一端点、可组合性等特点使得客户端可以灵活地获取所需数据。
3、SOAP API:
使用SOAP协议作为API接口交互方式,以Web Service为代表。
高度结构化、严格控制和定义清晰的标准,适用于需要严格安全性和明确定义规则的场景。
4、gRPC API:
采用Google的gRPC框架,通过Protobuf协议来定义接口和条件约束,完成客户端和服务器端的远程调用。
5、类XML-RPC及其他类型API:
包括XML-RPC的API、JMS(Java Message Service)接口、WebSocket API以及IoT通信协议的接口等。
这些API因使用的普及率低而归类在一起,通常包含多种技术。
三、基于使用者的类型划分
1、用户参与型API:
在业务交互过程中需要自然人用户参与,如用户单击操作、与用户身份相关的会话保持等。
2、程序调用型API:
无自然人用户参与,仅仅是后端服务或前端应用程序之间的通信处理。
3、IoT设备型API:
提供给IoT设备调用,交互流程相对简单,或设备内无法完成流程需要离线操作。
API的类型多样且各具特点,开发者应根据具体需求选择合适的API类型和技术形式,随着技术的发展和应用场景的变化,新的API类型和技术也可能不断涌现。
小伙伴们,上文介绍了“api类型”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/696882.html