共计 1512 个字符,预计需要花费 4 分钟才能阅读完成。
一位读者问咱们是否有对于 JSON 与 XML 的 API 反对的最新数据。咱们没有现成的数据,然而疾速查问咱们的 API 目录能够让咱们深刻理解这个问题。同时这些数据还能够为咱们提供一些帮忙,理解不同 api 开发格局的应用频率。
咱们先是整顿了自 2005 年 ProgrammableWeb 网站启动以来所有 api 中最常见的申请和响应格局。
最显著的发现是 REST 格局 api 的主导地位。作为申请格局的 URI 查问字符串 /CRUD,是指 API 利用 HTTP 协定对 API 资源执行操作的能力。这在 REST 格局的 api 中最常见,因而在申请中应用 URI 查问字符串 /CRUD 标记着 RESTful 架构的应用。因为 18985 个 webapi 应用这种申请格局,所以能够这么说,REST 格局在网站目录中有将近 83% 的 api 应用。这不是一件奇怪的事,然而这也明确地通知咱们,在过来的十多年里,REST 是如许泛用。
当咱们提到 URI 查问字符串 /CRUD 时,你可能会留神到它作为响应数据格式呈现了 200 屡次,其中大部分是因为应用 web hook 事件驱动的 api。在 Web hooks API 中,客户机申请显示它想要反对的基于 Webhooks 的流。
流是通过一种办法实现的、客户机提供服务器调用的基于 HTTP 的 API。当服务器有更新时,它会对客户端进行 RESTful 调用。这就是为什么来自服务器的响应将蕴含 URI 查问字符串作为数据格式。
第二个值得注意的后果是,正如预期的那样,JSON 是应用中最风行的响应数据格式。JSON 绝对于 XML 的劣势,包含更轻的无效负载、更高的可读性、缩小序列化 / 反序列化的机器开销、更容易被 JavaScript 应用等,这些曾经探讨了很多年。因而 JSON 是首选格局也就难能可贵了。但乏味的是,XML 的应用频率是 JSON 的 90%。
这些历史数据有助于从整体上了解 api,对思考近年来 api 的发展趋势可能会很有用。
接着查问了 2018 年 3 月到 2020 年 3 月的数据库,看看当初 API 能通知咱们什么?
回到 JSON 与 XML 的比照问题上,咱们看到在过来两年中,JSON 作为响应数据格式的应用次数是 XML 的五倍。到目前为止,XML 仍然是 API 提供者应用的第二大响应格局,JSON 也仍然是首选的格局。
REST 架构款式和 JSON 数据格式是 API 空间的次要元素,当然它们也不是构建 API 的惟一办法。因为对实时执行的应用程序的需要,事件驱动 API 体系结构在过来几年中始终在稳步增长。两个最风行的事件驱动协定是 webhook 和 WebSockets;在过来的两年中,它们被利用于近 200 个 api 中。
GraphQL 是一种 RPC 格调的 api 办法,自 2015 年问世以来,人们对它进行了大量探讨。
一些狂热的评论家很快就发表 GraphQL 将取代 REST,它被认为是一种在特定用例中十分无效的代替办法。在过来的两年中,它曾经在 53 个 api 中应用,这是一个不错的景象,但与同期呈现的 3000 多个新的 restfulapi 相比,显然显得微不足道。
接着说到旧的激进办法,SOAP 依然胜利地呈现在 68 个新 API 中。这里的一个细微差别是基于 SOAP 的实现总是波及 XML 数据格式。然而并非所有基于 XML 的 api 都波及 SOAP,很多 REST 格调的 api 都反对 XML 作为数据格式。
最初一点要留神的是,Unspecified 在申请和响应中显示为第三种最常见的数据格式。网站的目录数据模型应用 Unspecified 作为 API 提供者不提供此信息的简写。这可能是因为文档不好,或者通常状况下,文档暗藏在注册流程前面,阻止咱们理解这些细节。这是最常见的开发人员经验不足的例子之一。
翻译:Eolinker
起源:www.eolinker.com