swagger 相关问题

Swagger是一个框架实现,用于基于Open API规范描述,生成,使用和可视化RESTful Web服务

OpenAPI 3.0 - 如何将一个数组中的项目合并/展开到另一个数组中?

在 OpenAPI 3.0 中,如果我有两个类似类型数组的组件,如下所示: 成分: 模式: 水生哺乳动物: 类型:数组 项目: 任何: - $ref: '#/comp...

回答 1 投票 0

.NET 4.8 ASP.NET Swagger SwashBuckle 请求包含实体主体,但没有 Content-Type 标头。不支持媒体类型应用程序/八位字节流

您好,我在使用 .NET Framework 4.8(ASP.NET [不是 ASP.NET Core!])配置/测试 Swashbuckle/Swagger 5.6.0 时遇到问题 从 WebUI Swagger 测试 GET 方法会引发错误。 做同样的事...

回答 1 投票 0

如何强制 Swagger Codegen 生成未从任何其他对象引用的枚举?

我有一个包含多个枚举的 OpenAPI 规范: 社交链接类型: 类型:字符串 枚举: - FACEBOOK - YOUTUBE - Instagram - 推特 - Pinterest - 领英 - 抖音 - 翻滚...

回答 2 投票 0

当从根、“/”提供服务时,Swagger 不会在 Azure 中授权,尽管从路径、“/swagger”、“/boink”等工作

我有一个 Swagger 的工作设置(大致设置如本答案所示),将我发送到我授权的 Azure,然后获取一个功能令牌。一切都是理所应当的,而不是关于

回答 1 投票 0

使用负载均衡器在 AWS 上进行 OpenAPI Swagger 配置

我正在尝试在我的 Spring Boot 应用程序中添加 Swagger (OpenAPI),并按以下方式配置它: 我的 pom.xml 文件具有以下依赖项: 我正在尝试在我的 Spring Boot 应用程序中添加 Swagger (OpenAPI),并按以下方式配置它: 我的 pom.xml 文件具有以下依赖项: <!-- Swagger UI --> <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-ui</artifactId> <version>1.6.9</version> </dependency> 应用程序类有一个 @SpringBootApplication 注解并定义了以下 bean: /** Swagger Configuration */ @Bean public OpenAPI seatManagerOpenAPI() { return new OpenAPI() .info(new Info().title("Service API") .description("Some Description") .version("0.0.1") .license(new License().name("Apache 2.0").url("http://springdoc.org"))) .externalDocs(new ExternalDocumentation() .description("Some Documentation") .url("https://somelink") ); } 我的 Spring Boot 应用程序有一个控制器: @RestController @RequestMapping("/serviceName") public class ServiceNameController 我的 application.yml 添加了以下内容: springdoc: packagesToScan: path.to.service pathsToMatch: /serviceName/** swagger-ui: path: /serviceName/swagger-ui 通过这个非常基本的配置,Swagger 可以在我的本地主机上完美运行: [http://localhost:8082/servicename/swagger-ui/index.html] 但是,当部署到 AWS 上的 ECS 集群时,我的请求通过负载均衡器 (ALB) 传递 - 我收到以下错误:“无法加载远程配置”。在浏览器中检查这一点,我在日志中看到 404 状态和一条消息: undefined /v3/api-docs/swagger-config 我有一个在 ECS 上运行的由多个微服务组成的集群。负载均衡器根据路径将各种https调用定向到相关的目标组(服务),例如: IF Path is /servicename/* AND Host is someHost Then forward to [relevant target group] (service) 我看过很多关于类似错误的帖子,以及与 API 网关(我根本没有在 AWS 上使用)或 Spring Security 库(我根本没有使用)配置相关的答案。 我尝试添加这个bean: @Bean ForwardedHeaderFilter forwardedHeaderFilter() { return new ForwardedHeaderFilter(); } 我还在 application.yml 文件中尝试了许多配置,添加和删除了许多具有不同值的属性(不仅仅是这里包含的属性): springdoc: # swagger-ui: # use-root-path: false # url: "/v3/api-docs" # disable-swagger-default-url: true # path: /serviceName/swagger-ui # configUrl: "/swagger-config.yaml" # use-root-path: true # urls: # url: "/v3/api-docs" # name: "seat-manager" # api-docs: # enabled: true # path: /v3/api-docs/swagger-config 我还尝试将 swagger-config.json 文件添加到我的资源和资源/静态文件夹中,并来回更改内容,但我无法使其工作。 我在这里缺少什么?什么设置实际上可以让 swagger 在我的云中远程工作? 提前非常感谢! 我遇到了同样的问题,解决方案很简单。在 ALB 上,您还需要公开 docu json 页面,稍后还需要公开 api 路径(用于调用)。 简而言之:为了让 swagger 在 ALB 上工作,需要公开以下内容: /swagger-ui* -> 访问 swagger 页面 /v3/api-docs* -> 需要这样才能加载 swagger 页面 /api* -> 需要 API 调用才能工作

回答 1 投票 0

承载令牌在 swagger 上工作,但在登录邮递员后在邮递员上不起作用

当我在邮递员中点击登录API时,在我使用登录后获得的不记名令牌点击另一个API后,它会工作,显示无效或过期的令牌,但当我在

回答 1 投票 0

为 laravel 生成自动 swagger 注释/或 swagger 文档

大家好,我在整个项目中编写注释时遇到了问题,有很多方法可以使用。目前我想将 swagger 部署到我的项目中,它非常节省我的时间。 是...

回答 1 投票 0

在.Net Core 8.0 Web Api 中收到 Swagger 错误

我创建了一个.NET Core 8.0 Web api 我添加了两个类,它们代表具有相同内部类的 api 响应。 公开课之家 { 公共维度维度{获取;放; }=新

回答 1 投票 0

如何在 Swagger UI 中公开 Actuator 端点?

如何在 Swagger UI 中公开 Actuator 端点?我希望我能翻转表演执行器标志 弹簧文档: 招摇用户界面: 启用:真 路径:/swagger-ui 配置网址:/swagger-ui/confi...

回答 2 投票 0

Spring Boot:自动生成完整的 CRUD REST 端点并显示在 SwaggerUI 中

我创建了一个 spring-boot 项目,并为 /employers 定义了一个带有 1 个端点的 REST 控制器 @RestController 公共类雇主控制器{ @Autowired 私人雇主服务

回答 1 投票 0

SwaggerUI/OpenAPI 包含完整的 CRUD REST 端点,无需定义它们

我创建了一个 spring-boot 项目,并为 /employers 定义了一个带有 1 个端点的 REST 控制器 @RestController 公共类雇主控制器{ @Autowired 私人雇主服务

回答 1 投票 0

带有 netty 服务器和 swagger-ui 的反应式 springboot

我有一个在 netty 服务器上运行的反应式 spring-boot 应用程序,其中 springboot 版本为 3.2.2 和 Java 17。当我添加依赖项时 org.springdoc 我有一个在 netty 服务器上运行的反应式 spring-boot 应用程序,其中 springboot 版本为 3.2.2 和 Java 17。当我添加依赖项时 <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId> <version>2.3.0</version> </dependency> /swagger-ui/index.html 或 /swagger-ui.html 路由不返回任何内容。 我尝试将其向下打开以打开 Swagger 2,但没有成功。 在高处,感觉太愚蠢了,我没有注意到有一个单独的通量库 正如 Alex 指出的,解决这个问题的方法是改变依赖关系。 <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-starter-webflux-ui</artifactId> <version>LATEST_RELEASE_VERION</version> </dependency>

回答 1 投票 0

有没有办法忽略 ASP.NET Core 中 HTTP 日志记录中的 swagger 响应?

我有一个使用 .net 7 创建的 asp.net Web api。 我启用了 http 日志记录以在应用程序日志中查看完整的 http 请求和响应。 (我知道它可能包含敏感内容

回答 1 投票 0

在 .NET Lambda API 中为 Swashbuckle swagger.json 启用 COR

我有一个 .NET lambda API,之前我使用 Swashbuckle 生成一个 swagger.json 文件,该文件提供给外部站点使用。我现在正在尝试设置 swagger.json 文件是

回答 2 投票 0

在 Spring Boot 中配置 Swagger UI

我有一个关于打开Swagger界面的问题,链接如下:http://localhost:8080/swagger-ui/index.html 目前,当我尝试访问它时,我收到 500 错误,我......

回答 1 投票 0

Swagger-php 属性文档

有谁知道如何找到带有属性的 Swagger-php 的良好文档(openapi)?我正在使用 symfony 进行编程 我尝试在谷歌中搜索,但找不到包含所有内容的广泛文档...

回答 1 投票 0

API文档使用swagger,YAML语法错误

我正在使用swagger学习API文档(开放API版本3) 我正在尝试记录邮寄路线。 这是我的 YAML 语法。 /** * @招摇 * /家: * 邮政: * 摘要:创建一个新的

回答 1 投票 0

是否可以向 dotnetcore api 应用程序中的路径变量添加参数验证?

给出方法: /// 文件所在的容器。 /// 要获取的文件名。 给出方法: /// <param name="containername">The container the file resides in.</param> /// <param name="fileName">The name of the file to get.</param> /// <returns>The file specified.</returns> [HttpGet("{containername}/contentfiles/{fileName}", Name = "Get")] [ProducesResponseType(typeof(FileResult), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ErrorResponse), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ErrorResponse), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ErrorResponse), StatusCodes.Status503ServiceUnavailable)] public ActionResult Get(string containername, string fileName) 我检查容器名称和文件名对于我的目的是否有效,然后获取数据。 Swagger 自动给我 *required,但不是最小长度和最大长度,这是有道理的,因为它不知道在哪里可以找到这些。 我希望我能做这样的事情: /// <param name="containername" minimum="3" maximum="63">The container the file resides in.</param> 但它只是放弃了那些。如何将它们添加到我自动生成的 Swagger 文档中(我正在使用 Swashbuckle,以防万一)? 我使用 ASP.NET Core 3.1 Api 项目创建了一个示例项目。 首先让我们看一下控制器,注意 ApiController 属性,并注意 FromRoute 属性: using Microsoft.AspNetCore.Mvc; using System.ComponentModel.DataAnnotations; namespace ValidationExampleApi.Controllers { [ApiController] [Route("[controller]")] public class ValidationController : ControllerBase { [HttpGet("{containername}/contentfiles/{fileName}")] public bool Get([FromRoute]RequestModel request)//it will return 400 bad request if validation fails { if(ModelState.IsValid)//please note in this case this line will never be hit. { return false; } else { return true; } } } } 现在让我们看一下模型并注意带有一些验证规范的数据注释: using Microsoft.AspNetCore.Mvc; using System.ComponentModel.DataAnnotations; namespace ValidationExampleApi.Controllers { public class RequestModel { [Required(AllowEmptyStrings = false)] [StringLength(5, MinimumLength = 2)] public string containername { get; set; } [Required(AllowEmptyStrings = false)] [StringLength(5, MinimumLength = 2)] public string fileName { get; set; } } } 现在让我们看看我的启动类,注意我添加了普通的默认 swashbuckle 配置: using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.OpenApi.Models; namespace ValidationExampleApi { public class Startup { public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration { get; } // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" }); }); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if(env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } // Enable middleware to serve generated Swagger as a JSON endpoint. app.UseSwagger(); // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), // specifying the Swagger JSON endpoint. app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); c.RoutePrefix = string.Empty; }); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); } } } 现在看看我的招摇如何表明我违反了最大长度: 最后注意事项: 您还可以将路由参数与查询参数结合起来。 您还可以在模型的属性级别应用“FromRoute”属性。 有很多方法可以做到这一点。这只是一个“让您开始”的示例。 自定义错误响应: 在这里您可以看到如何使用错误处理程序以及 InvalidModelStateFactory 和 ValidationProblemDetails:自定义处理错误 这是有关如何使用 InvalidModelStateFactory 的另一个示例: 关于如何自定义错误的另一个示例

回答 1 投票 0

如何使用 CXFNonSpringJaxrsServlet 将 swagger 工具与 apache CXF REST Web 服务集成?

能否请有人提供在没有 Spring 框架支持的情况下将 Swagger 集成到 Apache CXF JAX-RS 应用程序中的明确步骤(使用 org.apache.cxf.jaxrs.servlet。

回答 1 投票 0

如何发送带有正文的 swagger multer 文件

我有一个 Nest js 项目,其端点接受带有正文的文件。 它适用于邮递员,但是 当我添加 swagger @ApiParam 时,它不会将文件发送到该字段 我的终点: @ApiParam({ 名称: '

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.