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

具有多个Swagger规范的Swagger请求验证

高德水
2023-03-14

我们希望将我们的swagger规范拆分为两个文件。一个包含endpoint,一个包含类型定义,因为类型定义用于多个项目,我们希望避免在多个源位置修复某些内容。

我们使用html" target="_blank">maven codegen插件来生成模型和api,它可以很好地进行拆分。

但是,请求验证不会,因为它无法遵循对它所显示的类型定义的外部引用。

我们使用swagger-request-validator-spring MVC进行请求验证。不幸的是,只允许一个资源,并且它不像swagger-codegen那样将多个规范扩展/合并成一个。

在详细模式下运行 swagger-codegen 时,日志中会显示一个“合并的”swagger 规范。有没有办法让codegen导出这个合并的规范?

或者是否有其他方法可以通过多个规范文件进行请求验证?

共有1个答案

李宜然
2023-03-14

在详细模式下运行 swagger-codegen 时,日志中会显示一个“合并的”swagger 规范。有没有办法让codegen导出这个合并的规范?

如果我理解正确的话,你在使用maven插件时需要完整的swagger规范。这通常在插件配置中指定的输出文件夹中生成。

<plugin>
    <groupId>io.swagger</groupId>
    <artifactId>swagger-codegen-maven-plugin</artifactId>
    <version>${swagger.codegen.maven.plugin.version}</version>
    <executions>
        <execution>
             <phase>generate-sources</phase>
             <goals>
                 <goal>generate</goal>
             </goals>
             <configuration>
                 ...
                 <output>${project.build.directory}/generated-sources/swagger</output>
                 ...
             </configuration>
        </execution>
    </executions>
</plugin>

不过,我不明白你的第二个问题——你能详细说明一下吗?

或者是否有其他方法可以通过多个规范文件进行请求验证?

 类似资料:
  • iam试图验证一些可能包含swagger规范的字符串。我正在尝试使用swagger解析器。 以下代码不起作用。我只收到消息:“[属性不是]类型” swagger规范是从xml文件中读出的。 这个方法是错误的吗?或者。错误消息的含义是什么?我只想知道字符串是否包含JSON格式的有效Swagger规范。 谢谢你的帮助。 更新:问题已解决 据我所知,如果字符串不是json有效的,就会抛出错误。首先我检查

  • 我们对不同的项目使用基于Swagger的REST API规范。因此,每个项目都有自己的Swagger UI,其中包含endpoint描述。所有这些UI都部署在不同的服务器上,使用不同的域名,从组织的角度来看一点也不酷。 有什么好的选择可以在一个地方存储多个Swagger规范吗?它可以是使用Swagger规范的REST API描述管理的任何服务。

  • 我开发了一个带有Swagger注释的REST API。我已经能够展示一个炫耀的ui应用程序的api文档,非常好。 问题:根据我的注释,我试图使用swagger提供的url生成符合该规范的客户端。问题是,它似乎是不兼容的,或者至少,我不知道如何做swagger编辑器读取我的网址,并从那时起,产生客户。但是swagger编辑器向我报告了一些错误... 是否可以将我的带注释的 swagger api 与

  • 我需要在爪哇中使用摇摆不定(YAML文件)来验证传入的REST请求。所以任何人都可以帮我这个。提前致谢。

  • 我正在为一个新endpoint创建一个招摇规范,该endpoint将接收一个作为二进制数据的文件。你会如何在夸张的规范中表达这一点?我将对象视为数据类型,但这似乎不是我要寻找的。过去有人这样做过吗? 据我所知,这个问题不是重复的,因为它专门涉及二进制或“blob”对象类型。

  • 对不起,如果这个问题似乎很明显,但我是新的表达,节点,和大摇大摆。 我相信有,但很难找到,或者我没有找到正确的东西。