关于api:搞懂-API-API-分类全知道

45次阅读

共计 1733 个字符,预计需要花费 5 分钟才能阅读完成。

API,即应用程序编程接口,是为了不便应用程序之间的数据和性能交互而设计的一些规范办法。API 的分类能够从多个维度进行,我会对 API 的分类维度进行简略的介绍。

1. 依据应用形式的不同

通常状况下,API 能够分为两种应用形式:外部 API 和内部 API。
外部 API 是指供企业外部开发人员和利用所应用的 API。当企业须要一些定制化的应用程序或者集成特定的性能时,外部 API 能够提供更好的技术支持,同时也能保证数据的安全性和可靠性。

内部 API 则是供公众开发者应用的 API,通过提供数据和服务,使得内部的开发者能够构建丰盛的应用程序并与以后的生态系统进行合作。越来越多的各类公司都开始向公众提供本人的 API,示例包含 Facebook、Twitter、Google 等。

2. 依据拜访形式的不同

依据 API 的拜访形式,API 能够分为以下几种:
a. RESTful API
REST(Representational State Transfer)是一种基于 HTTP 协定的 Web 应用程序架构规范。RESTful API 遵循 RESTful 架构的准则,通常由资源门路和申请办法组成,以达到可读性高、灵活性好的目标。
b. SOAP API
SOAP(Simple Object Access Protocol)是一种基于 XML 编码的近程调用协定,比较复杂而且解决工夫和网络资源使用率高。尽管 SOAP 技术曾经逐步淡出市场,但在某些非凡场景下依然会有所利用。
c. GraphQL API
GraphQL 是由 Facebook 公司开源的一种数据查询语言和 API 执行引擎,能够呈现出 schema 来表白整个数据的构造,并为前端工程师提供自在定义获取所需属性、代码重用等人性化的特色。
d. gRPC API
gRPC 能够了解为 Google Remote Procedure Call,是 Google 最新开源的跨语言 RPC 框架。借助基于 HTTP/2 的二进制传输协定,gRPC 提供了比 JSON 和 RESTful 更疾速和更牢靠的通信形式。

3. 依据性能的不同

依据 API 的性能性质,API 能够分为以下几类:

a. Web API
Web API 个别都针对 Web 应用程序,提供一些规范的接口,例如:W3C DOM 接口、HTTP 接口、WebSocket 接口、Web Worker 接口等。这些 API 帮忙浏览器获得用户元素信息、发送 AJAX 申请等等。
b. 操作系统 API
操作系统 API(如 Windows API 或 POSIX API)提供了与操作系统软件交互的办法,容许应用程序查问及管制硬件设施或操作系统内核工作等。此类 API 简直实用于任何类型的环境。
c. 数据库 API
数据库 API 能够使应用程序通过某些 API 实现对一些数据存储的操作,例如:SQL、NoSQL 等数据库里都有相干的 API 调用。

在理论应用中,API 反对拜访不同的功能模块,例如数据转换、数据分析、网络安全、门户治理、日历等等,还能够依据不同的需要进行客制化的开发。

总之,在开发过程中,依据理论需要抉择适合的 API 类型是十分重要的,可能疾速、高效地构建须要的应用程序。

如果你日常会用到 api 管理工具的话,无妨看看我目前 参加的这个开源我的项目,Postcat 开源的 API 管理工具,纯国产,收费的,主打插件生态,适宜中小团队以及集体开发者应用,有 API 相干的外围性能。

目前在 Github 上 3k star, 如果你感觉这个我的项目还不错的话,无妨点个 star 反对一下~

Github:
https://github.com/Postcatlab/postcat

Postcat 外围性能:

  • API 文档治理:可视化 API 设计,生成 API 文档
  • API 测试:主动生成测试参数,主动生成测试用例,可视化数据编辑
  • 插件拓展:泛滥插件扩大产品性能,打造属于你和团队的 API 开发平台
  • Mock:依据文档主动生成 Mock, 或创立自定义 Mock 满足简单场景
  • 团队合作:既能实现 API 分享也能能够创立云空间独特合作

Postcat 劣势:

  • 免登录即可测试:省去繁琐的验证登录的操作
  • 界面简洁:没有冗余的性能与简单选项
  • 收费:中小团队以及集体应用
  • 丰盛的插件:反对数据迁徙、主题、API 平安等高达 30 款插件
  • 国产:能更好的了解国内用户的需要,与开发团队沟通无障碍
  • 欠缺的用户文档:跟着操作就能疾速上手
正文完
 0