是否有适用于Vert.x的基于注释的Swagger文档创建器?其余的端点都是使用路由器管理的,因此如果有任何方法可以生成Swagger文档,那就太棒了.我使用各种注释完成了基于Java Jersey的文档创建器,但找不到Vert.x文档的任何内容.Git Hub上的官方招摇wiki也没有任何与Vert.x文档相关的文档.
我正在尝试kotlin从一个庞大的json文件生成代码,但是我无法弄清楚应该使用的命令行参数。
I've tried Swagger codegen v2.3.1 and v2.2.3 and both fail for kotlin, kotlin-client, and kotlin-server with the same error. What's the correct switch to generate Kotlin?
Update from Helen's question: I installed swagger codegen with:
git clone git@github.com:swagger-api/swagger-codegen.git ./swagger-codegen
cd swagger-codegen
git checkout tags/v2.2.3
Run Code Online (Sandbox Code Playgroud)
I also tested with Swagger codegen's bin/kotlin-client-petstore.sh and kotlin was not recognized for that script.
(I've also tried the Swagger Codegen plugin for IntelliJ because it does list kotlin as an …
我已经swagger.yml使用go-swagger设置了一个现有的 Web 服务器
,它已经为我提供了 api 的验证和路由
我想使用echo web 框架进一步开发这个服务器,有没有办法集成这两个,以便我可以使用它们两者提供的功能。
基本上,如果我从头开始在 echo 中实现所有内容,我就会放弃开箱即用的 go-swagger 提供的验证和路由,并且必须在 echo 代码上编写不那么开发友好的注释(与 swagger.yml 相比)
或者任何类似的 echo 工具?
我正在使用Swagger代码源创建要在Spring REST服务器中使用的Java模型,并且想知道如何获取Swagger来将每个模型声明为JPA实体。
我使用以下代码生成代码swagger-codegen-maven-plugin:
<plugin>
<groupId>io.swagger</groupId>
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>2.4.0</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<inputSpec>${project.basedir}/src/main/openApi/Rack.json</inputSpec>
<language>spring</language>
<groupId>com.me</groupId>
<artifactId>rest-server</artifactId>
<apiPackage>com.me.rest.api</apiPackage>
<modelPackage>com.me.rest.model</modelPackage>
<invokerPackage>com.me.rest.invoker</invokerPackage>
<configOptions>
<sourceFolder>src/gen/java/main</sourceFolder>
<java8>true</java8>
<dateLibrary>java8</dateLibrary>
</configOptions>
</configuration>
</execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)
现在,这是生成的缩写Java代码:
@Validated
@javax.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "...")
public class Rack {
@JsonProperty("id")
private Long id = null;
@JsonProperty("name")
private String name = null;
...
}
Run Code Online (Sandbox Code Playgroud)
如何获取Swagger来添加@Entity和@Id JPA批注,如下所示?
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
@Validated
@javax.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "...")
public class Rack {
@Id
@JsonProperty("id")
private Long id …Run Code Online (Sandbox Code Playgroud) 我正在使用Swagger OpenAPI 3.0.2版本来描述我的API。
我从Swagger gihub存储库构建了swagger-codegen 3.0.5快照。
我想要一个Java客户端,该客户端将为client_credentials的授予类型获取OAUTH2令牌。我想要客户端凭据,因为这是一台与另一台计算机通信的机器,我不是在向用户询问其凭据。我的规格文件中包含以下内容:
securitySchemes:
oAuth2ClientCredentials:
type: oauth2
description: Standard OAUTH2
flows:
clientCredentials:
tokenUrl: my_token_url
scopes: {}
security:
- oAuth2ClientCredentials: []
我想要一个带有客户机ID和客户机机密的基本身份验证标头,其中标准的base64编码具有Grant_type作为URL编码形式。这是相当标准的OAuth2身份验证。
我似乎有时会获得OAuth身份验证的代码,有时却不会。除了我手动证明访问令牌之外,python库对OAuth而言一无所有。除非我要求将其改造为基础库,否则Java库没有它,但是它会生成Bearer Authentication标头,而不是Basic Authentication Header。Retrofit2甚至无法正常工作,车把模板中有一个非法字符,车把被倒钩。
那么,人们在拥有客户ID和客户机密的情况下如何获取访问令牌?您是否编写代码以自己获取访问令牌?还是有某种神奇的方法来获取swagger-codegen-cli为我生成代码,具体取决于我使用的库?
如果有人设法通过swagger-codegen-cli生成使用OpenAPI 3.0规范的OAuth 2客户端凭据所需的一切,请告诉我。
我已经使用 Swaggerhub 创建了 api 端点,并成功导出以与 asp.net core 一起运行。我想用 Nestjs 测试相同的 api,但我发现用 openapi 进行记录,但反之则不然;将 yaml 转换为 Nodejs。有没有办法使用 OpenAPI3.0 架构中的 TypeScript 生成 NestJS?
我正在使用 Swagger Codegen 3.0.19,还尝试了 OpenAPI Generator 4.0.3。
Java环境:
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
Run Code Online (Sandbox Code Playgroud)
跑步者:
java -jar ./libs/openapi-generator-cli-4.3.0.jar generate \
-i pet.yaml \
-g spring \
-o ./OUTPUT/api/
Run Code Online (Sandbox Code Playgroud)
这是我的 OpenAPI 架构:
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
Run Code Online (Sandbox Code Playgroud)
输出是:
java -jar ./libs/openapi-generator-cli-4.3.0.jar generate \
-i pet.yaml \
-g spring \
-o ./OUTPUT/api/
Run Code Online (Sandbox Code Playgroud)
为什么代码生成器将 ON/OFF 枚举转换为 TRUE/FALSE?当我使用 Swagger Editor GUI 生成时,它不会执行此操作。
我有一个带有 Swagger API 的项目,其服务器代码是由 swagger-codegen-2.4.24 为语言 jaxrs 生成的。
生成的代码有一个后缀为“*ApiService”的抽象类,它定义了一系列方法,每个方法对应于API的Swagger规范上定义的每个操作。
每个方法都有一个 javax.ws.rs.core.SecurityContext 接口局部变量。
现在,在扩展“*ApiService”的自定义类上,它显然具有 javax.ws.rs.core.SecurityContext 类局部变量,我需要获取请求标头“X-Forwarded-For”的值。
如果我调试自定义类,我会看到 SecurityContext 接口是 org.glassfish.jersey.server.internal.process.SecurityContextInjectee 的实例,它具有我需要的标头。
由于 SecurityContextInjectee 是私有的,我无法使用它,因此如何获取该信息?
我意识到,如果 swagger-codegen 生成的类除了 SecurityContext 之外还添加了 javax.servlet.http.HttpServletRequest 类,则可以访问请求参数,但我没有看到任何允许这样做的 jaxrs 参数。
期待您的评论。
我有一个带有 Spring Cloud Gateway 的微服务架构,每个微服务都有自己的 Open Api Spec。我需要将它们全部合并到 1 个开放 Api 规范( yaml 或 json )中。我不是在谈论服务多个链接的单个 swagger UI。我确实需要合并规范,因为规范的使用者需要一个 json 文件。此文件由 Atlassian 的 Open Api Validator 使用。
我需要使用带有 Jakarta 包的 swagger codegen gradle 插件生成 spring 控制器源代码,但我在配置中看不到这样做的选项
我尝试使用以下选项来生成招摇代码:
additionalProperties = [
"errorOnUnknownEnum": true,
"dateLibrary": "java8",
"hideGenerationTimestamp": true,
"modelPackage": "com.delphix.api.gw.model${version}",
"apiPackage": "com.delphix.api.gw.api${version}",
"interfaceOnly": true,
"packageName": "api",
"useTags": true,
"useJakartaEe" : true,
"useSpringBoot3" : true,
"generateSupportingFiles" : false,
"java11" : true,
]
Run Code Online (Sandbox Code Playgroud) swagger-codegen ×10
swagger ×5
openapi ×3
java ×2
go ×1
kotlin ×1
nestjs ×1
rest ×1
spring-boot ×1
springdoc ×1
swagger-ui ×1
swaggerhub ×1
vert.x ×1
web-services ×1
yaml ×1