对于我们的 REST API,我们有某些 HTTP 请求标头,这些标头将由基础设施组件设置,并且不应在 OpenAPI 规范中发布给使用者。
在我们构建的基于 Spring Web 的实现代码(实现 openapi-generator 生成的接口)中,从 HTTP 请求中检索类似内容的正确方法是什么?例如,接口上未指定的标头。
我在 openapi-generator 本身中没有看到任何选项来将 HttpServletRequest 作为参数添加到生成的方法中。我希望有一种更通用的方法可以在 Spring / Spring Web 中处理它。
在 OpenAPI/Swagger 文件中声明“char”的正确方法是什么?我尝试过这些..但没有用
myTestProperty:
type: char
example: C or B
Run Code Online (Sandbox Code Playgroud)
我也这样累了,但没有运气
myTestProperty:
type: string
format: char
example: C or B
Run Code Online (Sandbox Code Playgroud)
该文档确实特别提到了 char 数据类型,但在其他地方也找不到。
请建议。
我正在使用 swagger-codgen 为我的 Spring Boot 应用程序生成 java 模型类并将它们序列化为 json。默认情况下,这些模型都将包含具有空值的可选属性。
我想为 spring 配置 swagger-codgen 以在所有类的顶部包含此注释:@JsonInclude(Include.NON_NULL)以便空值属性不包含在序列化的 json 中。
我怎样才能做到这一点?有配置选项还是我必须手动扩展 spring 代码生成器?
例如:
java -jar swagger-codegen-cli-2.2.1.jar generate -i http://weburl/apidocs/swagger.json -l java -o output
在生成的文件中,有一个ModelAPI.java,其中方法(对应HTTP GET请求)返回void。
我期望返回 POJO 对象(对应于响应的 json),但返回了 void。
有没有办法生成POJO对象,这样当我在代码中使用客户端SDK时,就可以使用POJO对象了?
我错过了什么吗?
我正在尝试使用try按钮制作一个html。swagger-code gen或swagger-ui都给了我这个结果。你有什么建议吗?
我想使用swagger-codegen生成我的假装客户端代码,但我找不到可以引导我去做的文档.
我有一个使用spring cloud的微服务,几个api-services使用spring-cloud-feign接口来请求数据.我希望我可以生成假装客户端代码.
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>2.2.3</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<inputSpec>http://localhost:9141/v2/api-docs?group=building-service-api</inputSpec>
<language>java</language>
<output>${project.build.directory}/generated-sources/swagger</output>
<library>feign</library>
</configuration>
</execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)
语言/库设置为'java/feign',只有没有假装客户端的模型;
语言设置为'spring','feign'是不受支持的库.
我很困惑如何生成我的所有代码?似乎几乎没有指南或文档或演示?
我找到了项目https://github.com/swagger-api/swagger-codegen。
然而,这是生成一个基于 OpenFeign 的客户端。
有没有办法自动生成使用 Netflix 的 feign 注释和请求映射的客户端界面?
例子:
@FeignClient(name = "ldap-proxy")
public interface LdapProxyClient {
@RequestMapping(path = "/ldap-proxy/v1/users/{userNameOrEMail}", produces = MediaType.APPLICATION_JSON_VALUE, method = RequestMethod.GET)
LdapUser search(@PathVariable("userNameOrEMail") String userNameOrEMail);
}
Run Code Online (Sandbox Code Playgroud)
与以下课程相反:
谢谢
spring netflix-feign spring-cloud-feign feign swagger-codegen
我正在使用swagger-codegen-maven-plugin基于生成 Java 类swagger.yaml规范。
我phoneNum在swagger.yaml下面添加了一个属性:
phoneNum:
type: number
Run Code Online (Sandbox Code Playgroud)
我期望它生成带有Integer或Long数据类型的属性。
但它生成为BigDecimal phoneNum;
根据swagger 文档,有人提到使用format: int64
phoneNum:
type: number
format: int64
Run Code Online (Sandbox Code Playgroud)
但是,它最终会产生 private BigDecimal phoneNum;
如果你们中有人遇到过类似的问题并有解决方法,请在此处分享。
谢谢你。
我升级到 swagger-codegen 3.0.10,突然间屏幕上出现了大量调试输出。似乎没有命令行选项可以关闭它。
有谁知道如何关闭调试输出?
Swagger UI 与 Swagger CodeGen 之间有什么区别?
我阅读了https://swagger.io/tools/ 中的描述。听起来 Swagger Editor、UI 和 codeGen 是完全不同的工具。如果我想生成 .Net 服务器存根并将它们可视化,是否意味着我需要同时使用 UI 和 CodeGen?
swagger-codegen ×10
swagger ×6
java ×2
spring ×2
swagger-ui ×2
feign ×1
jackson ×1
openapi ×1
rest ×1
spring-boot ×1
spring-cloud ×1
spring-mvc ×1