JSON模式与开放API-Java支持



我在这里看到了这个JSON模式规范。

http://json-schema.org/understanding-json-schema/

我想知道它是否在某种程度上与开放API规范有关

https://swagger.io/specification/

  1. 两种规格在多大程度上都是标准规格?我知道Open API被广泛使用,但它真的被大公司采用作为一种实际标准吗?

  2. 哪一个在Java中有更好的支持;更多";标准
    我的意思是,例如,根据哪种类型的API定义,您可以更容易地生成客户端类以用于您的客户端代码?

  3. 假设你有一个API需要消费(例如通过Java客户端(。你会向API提供商要求什么,你会要求JSON模式API定义,还是要求基于开放API的API定义?

第一个链接是一个文档网站,讨论JSONSchema,其官方网站在这里,其规范在这里。JSON模式用于描述和验证各种数据结构(只要它们可以用JSON文档模型表示(,但它在HTTP应用程序中有广泛的用途。

Swagger现在被称为OpenAPI(迁移到3.x版本(。它的官方网站在这里,最新规范在这里。它在内部使用JSON模式作为其数据结构的一部分。它专门针对HTTP请求和响应的描述(有时还针对验证(。

这两个站点都有各种平台和语言的实现索引。

在多大程度上这两个规范都是标准规范?我知道Open API被广泛使用,但它真的被大公司采用作为一种实际标准吗?

两者都被广泛使用,是的,它们都是行业标准。

哪一个在Java中有更好的支持;更多";标准我的意思是,例如,根据哪种类型的API定义,您可以更容易地生成客户端类以用于您的客户端代码?

JSON模式的主要目的不是指定API。OpenAPI就是为之量身定制的。正如@Ether所说,It uses JSON Schemas internally as part of its data structure.如果您的目标是从API规范生成Java,请选择OpenAPI(假设您的API是REST或至少是REST-ish(。

假设您有一个API,您需要使用它(例如通过Java客户端(。您会向API提供商要求什么?您会要求JSON架构API定义,还是要求基于Open API的API定义?

OpenAPI,根据前面的解释。:(

最新更新