如何将1.1规格转换为1.2规格以上

时间:2018-12-05 20:43:41

标签: swagger openapi

我正在尝试为C#/ asp.net核心生成客户端代码,以使用具有庞大1.1规范的服务。 (该服务不受我控制)。不幸的是,大多数最新工具都需要1.2规格。大多数工具甚至需要open-api 2.0。甚至大多数转换器都从1.2开始。有人知道从1.1升级到1.2的工具吗?

我什至会考虑手动重写,但是我找不到任何地方在1.1和1.2之间发生了什么变化

1 个答案:

答案 0 :(得分:1)

首先,1.2也是一个非常旧的版本。考虑转换为OpenAPI 2.0(当今大多数工具都使用),甚至可能转换为OpenAPI 3.0(最新版本)。

Swagger Codegen

Swagger Codegen可以根据1.x-3.0规范生成客户端/服务器代码,还可以将Swagger 1.x转换为OpenAPI 2.0或3.0。

使用Codegen CLI v. 2.x根据Swagger 1.x规范生成C#客户端:

java -jar swagger-codegen-cli-2.4.0.jar generate
     -i http://path/to/spec.json
     -l csharp
     -o ./csharp-client

要将Swagger 1.x转换为OpenAPI 2.0,请使用-l swagger参数将Codegen CLI v.x 2.x转换为JSON或使用-l swagger-yaml转换为YAML。

java -jar swagger-codegen-cli-2.4.0.jar generate
     -i http://path/to/spec.json
     -l swagger
     -o ./converted

要转换为OpenAPI 3.0,请在-l openapi参数中使用Codegen CLI v. 3.x来获取JSON或使用-l openapi-yaml来获取YAML。

java -jar swagger-codegen-cli-3.0.3.jar generate
     -i http://path/to/spec.json
     -l openapi
     -o ./converted

API转换器

API Transformer声称支持Swagger 1.x-> 1.2 / 2.0 / 3.0转换。