首页 文章

有人在 生产环境 中使用Swagger Codegen或OpenAPI Generator SDK吗?

提问于
浏览
14

Swagger Code Generator可以生成多种语言的SDK(下面列出的是Github项目页面) . 有没有人在 生产环境 中使用Swagger的任何自动生成的SDK,包括alpha / beta和GA,如果有的话,有哪些组织和什么语言?

我做了一些Google搜索并询问了一下 . 虽然我发现了许多Swagger UI的部署示例,但我还没有找到任何Code Gen SDK .

项目页面:https://github.com/swagger-api/swagger-codegen

语言:

$ ls -1 modules/swagger-codegen/src/main/java/com/wordnik/swagger/codegen/languages/
AndroidClientCodegen.java
AsyncScalaClientCodegen.java
CSharpClientCodegen.java
JavaClientCodegen.java
JaxRSServerCodegen.java
NodeJSServerCodegen.java
ObjcClientCodegen.java
PhpClientCodegen.java
PythonClientCodegen.java
RubyClientCodegen.java
ScalaClientCodegen.java
ScalatraServerCodegen.java
SpringMVCServerCodegen.java
StaticDocCodegen.java
StaticHtmlGenerator.java
SwaggerGenerator.java
SwaggerYamlGenerator.java
TizenClientCodegen.java

Update - Major Project Official SDK Tracking (Jun 2018)

我正在跟踪大型组织中可识别的官方codegen SDK,以便更好地跟踪采用情况 . 许多将自己列为使用某些codegen项目的组织尚未在其GitHub帐户上发布SDK .

Update - Personal Experience (Dec 2017)

我一直在积极使用Swagger Codegen for Go(2.2.3 - 2.3.1) . 到目前为止,我的经验是它做得不错,但是需要进行各种手动调整才能获得有效的SDK,因此GitHub包/ repo仍然不错 . 您可以看到我维护的SDK的GitHub问题中的一些问题 . 我还将post处理添加到每个仓库中的 codegen/swagger_codegen_command.sh 文件中 .

Update - Add OpenAPI Generator (Jul 2018)

OpenAPI Generator是Swagger Codegen的一个分支,所以现在也提到了这一点 .

3 回答

  • 2

    我做了一个search in Github并找到了Swagger-Codegen生成的一些项目(SDK) .

    这是一个例子:Online Convert API2 Swift SDK

    您也可以参考Swagger-Codegen Github page来讨论Swagger-Codegen的用例

    更新:以下是一些但不是所有使用Swagger Codegen 生产环境 的公司/项目:https://github.com/swagger-api/swagger-codegen#companiesprojects-using-swagger-codegen

    注意:截至2017年7月,Swagger Codegen为API客户端,服务器存根和API文档提供了70多个生成器 .

  • 7

    作为平台架构师和DevOps,我可以说我成功地将它引入了一个项目,该项目使用Dreamfactory API Automation作为BaaS,而API则由swagger定义 . 因此,移动应用程序的SDK以及内部应用程序都是使用swagger-codegen生成的 . 我们在我们的语言的swagger-codegen模板中遇到了一些错误,这些错误相当容易修复 . 总的来说,它节省了大量时间并减少了潜在的错误来源 .

  • 5

    我使用它来基于spring codegen引导我们的API,现在用它来更改和添加域模型和API endpoints . 你仍然需要改变生成的类的某些方面,但它使重构非常轻松,并阻止我积累技术债务 . 将生成的swagger-ui用于手动测试非常有帮助,您可以将规范导入到生成存根的Postman,这样您就有了一个很好的起点和TODO概述来编写测试 .

    但是还没有使用过SDK . 我试图使用各种js客户端,但它们没有提供优于简单的fetch库的任何优势 .

    我发现codegen在更复杂的js框架(如Angular或React Redux)以及测试自动化方面的巨大潜力 .

相关问题