首页 文章

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

提问于
浏览
0

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

我们正在使用maven codegen插件来生成模型和api,它可以在拆分时正常工作 .

但是请求验证不会,因为它无法跟随对它看起来的类型定义的外部引用 .

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

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

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

1 回答

  • 0

    在详细模式下运行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>
    

    但我无法理解你的第二个问题 - 请你详细说明一下?

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

相关问题