当前位置: 首页 > 知识库问答 >
问题:

OpenAPI-为不断变化的api生成服务器代码?

杜霍英
2023-03-14

我正在维护一个Java应用程序,我们在其中不断添加新特性(api中的更改)。我想使用OpenAPI作为记录api的一种方式。我看到两种思想流派:

  1. 编写代码,使用一些注释来生成OpenAPI规范。

虽然两者看起来都很好,但服务器代码只是简单地存档了,然后需要大量的手动插入服务。虽然这似乎罚款作为一个一次性成本,然后下次我更新界面,它似乎对我来说唯一的两个选项是

  1. 再次生成它们,重新执行所有手动接线
  2. 手动编辑以前生成的类以匹配新的等级库文件(可能会引入错误)

我的选择正确吗?如果是这样,那么使用代码生成api规范文件似乎是唯一明智的选择。

共有1个答案

公西天逸
2023-03-14

我建议使用API优先的方法,在yaml文件中描述您的API,并使用每个新添加生成API。

现在,您如何处理发电机覆盖手动工作?您可以使用继承基于生成的代码创建模型和控制器。

您也可以使用。如果要确保文件不被覆盖,请忽略生成器提供的文件。

 类似资料:
  • 我试图生成一个API客户端从v2 swagger文件openapi生成器cli。为此,我使用openapi生成器cli的docker容器,它将其版本报告为4.1.0-SNAPSHOT。 代码生成使用以下选项: 我还尝试将选项设置为true。 但是,生成的服务类不使用装饰器进行注释。因此,在我的组件中导入它们并在组件的构造函数中添加服务后,我无法使用它们。这就是我的组件的样子: 失败,因为userS

  • 我正在使用openapi生成器生成服务器存根python代码。一切正常,但是,每次我修改OpenAPI规范(yaml文件),代码生成器都会覆盖整个代码,甚至是定制的代码(控制器)。我想开发一个增量工作流,如果我对规范进行了更改,生成器将只修改处理该部分代码的代码。 如果我能够执行规范并拥有一个增量工作流,那就太好了。 我使用的是openapi生成器版本3.3。4. 我试图修改控制器并删除,但每次我

  • 我使用的是默认配置,但由于某种原因,我一直收到以下错误: 任务“Generate OpenApidocs”执行失败。无法连接到http://localhost:8080/v3/api-文档等待了30秒 似乎由于某种原因,它没有设置服务器。我该怎么修好它?

  • 我必须从头开始创建RESTAPI。我已经有了一些关于球衣的经验,几乎所有的事情都是手工做的。 我想现在就做,因为这个项目是新的。因此,我目前正在尝试宠物商店示例,每次尝试openapi 3.0在线编辑器时都可以使用该示例。 使用openapi生成器,我为宠物店生成了Spring Boot服务器。 有很多教程会停在那里。我不明白我必须在哪里或如何添加我的业务逻辑代码(数据库访问,......)。 之

  • 我试图从OpenAPI v3 YAML文件生成Spring REST接口。构建说: 但是在输出目录中没有生成代码。 我遵循OpenAPI生成器gradle插件doc doc。 我的build.gradle: 我的api。yml: 应用程序编程接口。生成器正确收集yml(如果文件中存在任何语法错误,则生成失败)。 生成日志显示:),这看起来很可疑。这不意味着属性包含生成的结果吗? 渐变版本: 编辑:

  • 我在openapi v.3规范中有一个模型。我使用openapi生成器maven插件为库webclient(spring 5-webflux)生成java客户端。我想发送回客户端文件和http头。生成的代码没有获取响应标头的方法。 为客户端生成的代码不包含提供对响应头访问的代码。例如,如果我使用库resttemplate,则有一个方法public MultiValueMap getResponse