swagger-ui 相关问题

Swagger UI是HTML,CSS和JavaScript对象的集合,可以从符合Swagger的API动态生成文档

Spring Boot Swagger OpenAPI 3.0.1 无法呈现此定义错误

我有以下堆栈: 春季启动:2.7.3 启用 Spring Security springdoc-openapi-ui:1.6.15 应用程序.properties # Swagger 属性 springdoc.api-docs.path=/ics/api/docs springdoc.s...

回答 0 投票 0

swagger UI 在 webapi 中没有显示任何内容

我跟进到 xml 文档部分,以便使用 Swashbuckle 创建 Swagger 文档。它应该允许我通过(在我的例子中)查看端点: http://localhost:51854/swagger/ui/index

回答 6 投票 0

部署在代理后面的 springdoc-openapi-ui(Swagger UI)中错误的“生成的服务器 url”

带有 springdoc-openapi-ui (Swagger UI) 的 Spring Boot 2.2 应用程序运行 HTTP 端口。 应用程序被部署到 Kubernetes,Ingress 将 HTTPS 请求从集群外部路由到服务......

回答 6 投票 0

如何配置 springdoc-openapi-starter-webflux-ui 以在受保护资源上启用授权/承载

我正在开发一个包含一些公共资源和受保护资源的 webflux 应用程序。 我的依赖项: 我正在开发一个包含一些公共和受保护资源的 webflux 应用程序。 我的依赖: <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>3.0.0</version> <type>pom</type> <scope>import</scope> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-stater-web</artifactId> </exclusion> </exclusions> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb-reactive</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-webflux</artifactId> </dependency> <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-starter-webflux-ui</artifactId> <version>2.0.0</version> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-api</artifactId> <version>0.11.5</version> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-impl</artifactId> <version>0.11.5</version> <scope>runtime</scope> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-jackson</artifactId> <version>0.11.5</version> <scope>runtime</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.liquibase.ext</groupId> <artifactId>liquibase-mongodb</artifactId> <version>4.20.0</version> </dependency> <dependency> <groupId>org.liquibase</groupId> <artifactId>liquibase-core</artifactId> <version>4.20.0</version> </dependency> </dependencies> 应用程序.yml: spring: main: web-application-type: reactive data: mongodb: port: 27017 database: vilya_be liquibase: change-log: classpath:/mongo/changelog-master.xml springdoc: api-docs: path: /v3/swagger-ui.html swagger-ui: path: /v3/api-docs Java代码: @Configuration @EnableWebFluxSecurity @EnableMethodSecurity(securedEnabled = true, jsr250Enabled = true) @RequiredArgsConstructor public class JWTSecurityConfig { private final BearerAuthenticationFilter bearerAuthenticationFilter; @Bean public SecurityWebFilterChain filterChain(ServerHttpSecurity http) { return http.cors() .and() .csrf() .disable() .httpBasic() .disable() .exceptionHandling() .authenticationEntryPoint(entryPoint) .and() .authorizeExchange() .pathMatchers(USER_V1 + REGISTRATION, USER_V1 + SIGN_IN, "/v3/**") .permitAll() .anyExchange() .authenticated() .and() .securityContextRepository(NoOpServerSecurityContextRepository.getInstance()) .addFilterAt( bearerAuthenticationFilter, SecurityWebFiltersOrder.AUTHENTICATION) .build(); } } @RestController @RequestMapping(USER_V1) @RequiredArgsConstructor public class UserResource { private final UserService userService; private final AuthenticationService authenticationService; @PostMapping(REGISTRATION) public Mono<RegistrationResponse> register( @Valid @RequestBody Mono<RegistrationRequest> request) { return userService.register(request); } @PostMapping(SIGN_IN) public Mono<TokenPayload> signIn(@RequestBody Mono<SignInRequest> request) { return authenticationService.authenticate(request); } @GetMapping public Flux<User> findAll() { return userService.findAll(); } } 前两个 api 是公开的,我对它们没有问题,但最后一个 api 是受保护的,所以我希望 swagger ui 会有一个授权或标头部分让我放置不记名令牌。 当前行为: 正如我所提到的,我正在使用 springdoc-openapi-starter-webflux-ui,我认为它会自动配置,所以我想我不需要手动创建 @Bean 类型的 OpenAPI。但我不知道如何配置它以尊重我的安全配置。请帮忙,我也是新手。 PS:没有智能锁图标,只是一个复制图标。顺便说一句,没有授权按钮。 根据文档: 您应该将 @SecurityRequirement 标签添加到受保护的 API。 例如: @Operation(security = { @SecurityRequirement(name = "bearer-key") }) 安全定义示例: @Bean public OpenAPI customOpenAPI() { return new OpenAPI() .components( new Components() .addSecuritySchemes( "bearer-key", new SecurityScheme() .type(SecurityScheme.Type.HTTP) .scheme("bearer") .bearerFormat("JWT"))); } 之后,一个小锁图标将出现在受保护的 API 的右侧,如果单击,将显示授权弹出窗口。 在swagger-ui页面的右上角也会有授权按钮。

回答 1 投票 0

如何使用 Swagger UI 在标头中发送多个 cookie?

我正在使用 OpenAPI 和 Swagger UI 在 Node 中编写文档和 API。 API 使用缓存中的 API 密钥进行身份验证。我在我的 OpenAPI 定义中配置了全局 cookie 身份验证。

回答 2 投票 0

无法在asp.net core中为swagger api文档添加授权

我有一个用于多个 api 版本控制的 asp.net core 6 项目设置。但是,当我打开 nswager api 文档时。右侧的授权按钮根本不显示。我不确定我是什么

回答 1 投票 0

在python flasgger中,如何在web界面默认展开schema?

我已经开始使用 Swagger 来编写 API 文档。请帮我配置一下。默认情况下如何在 Swagger UI 中扩展架构? 从 flasgger 导入 Swagger,swag_from 从烧瓶导入烧瓶 ...

回答 0 投票 0

带有一个选项标记为已弃用的 Union 字段的 Pydantic 模型

我有一些 Pydantic 模型,其字段是不同模型的联合。 我正在寻找一种方法来在我的 fastapi 生成的文档中弃用某些联合模型。 我可以让整个领域

回答 1 投票 0

如何通过 vscode 启动 swagger url?

我正在尝试使用 dotnet run 命令在浏览器中启动 swagger UI。这是我在 launch.json 文件中尝试过的。预期结果是它应该在指定的 url 启动浏览器并打开

回答 3 投票 0

增加 swagger 请求超时

无论如何可以帮助我增加我使用 swagger 的“尝试一下”向我的 RestAPI 发出的 swagger 请求的超时? 我在互联网上漫游,没有找到有用的东西,而且...

回答 2 投票 0

Swagger 注释不适用于 enunciate

我有一个 rest API,我部署了它来使用 enunciate 招摇的 Ui。但是我在使用swagger注解在swagger Ui上添加注释时遇到了一些问题。有一些注解在 Ui 上不起作用(@

回答 1 投票 0

是否可以扩展 Swagger/Swashbuckle 以使用新的 Http 方法?

我正在开发一个在 .net core 7 中使用 swashbuckle/swagger 的 api 项目。 我怎么遇到过一个问题,即由于查询长度有限,GET 请求不适合。和其他 Http

回答 0 投票 0

使用 Swagger 的 $ref 作为路径时出现错误无法解析引用:尝试解析相对 URL,但没有 basePath

所以,我正在尝试使用 Swagger 创建 api 文档,但是,我试图避免为我们的所有调用使用巨大的 yaml 文件。这是我正在尝试做的事情: 服务器.js const swaggerOptions = {

回答 0 投票 0

C# WebAPI Swagger 将所有属性名称更改为小写

我有一个使用 SwaggerUI 的 ASP.NET Core 7 Web API。当我的方法使用类作为参数时,它会将其所有属性更改为小写。 有什么办法可以避免吗?

回答 2 投票 0

Spring boot 3 不适用于 springfox 3.0

我一直在尝试将 swagger 与 spring boot 集成。我在 springfox 3.0 中使用了 spring boot 版本 3.0.4 这是我的 pom.xml 文件 springfox 依赖项和父项 ...

回答 1 投票 0

启用 swagger2 时无法访问浏览器上的 UI

pom.xml 包含: io.springfox springfox-swagger2 2.9.1 pom.xml包含: <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.1</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.1</version> </dependency> 招摇配置文件: @Configuration @EnableSwagger2 @EnableWebMvc public class SwaggerConfig implements WebMvcConfigurer { @RequestMapping(value = "/docs", method = RequestMethod.GET) public String docs() { return "redirect:/swagger-ui.html"; } @Bean public Docket apiDocket() { return new Docket(DocumentationType.SWAGGER_2) .select().apis(RequestHandlerSelectors.any()) .paths(PathSelectors.any()) .build() .securitySchemes(Arrays.asList(apiKey())) .securityContexts(Arrays.asList(securityContext())) .apiInfo(apiInfo()); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("APIReference") .version("1.0.0") .description("something") .build(); } @Bean SecurityContext securityContext() { return SecurityContext.builder() .securityReferences(defaultAuth()) .forPaths(PathSelectors.any()) .build(); } List<SecurityReference> defaultAuth() { AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything"); AuthorizationScope[] authorizationScopes = new AuthorizationScope[1]; authorizationScopes[0] = authorizationScope; return Arrays.asList(new SecurityReference("JWT", authorizationScopes)); } private ApiKey apiKey() { return new ApiKey("JWT", "Authorization", "header"); } @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry .addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/"); registry .addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); } } 在Application.properties文件中: spring.mvc.pathmatch.matching-strategy=ANT_PATH_MATCHER springfox.documentation.swagger.v2.path=/swagger.json 为了绕过 Swagger 的 Spring Security,我在 WebSecurityConfigure 文件中添加了以下内容: @Override public void configure(WebSecurity web) throws Exception { web.ignoring().antMatchers("/resources/**", "/static/**"); web.ignoring().antMatchers("/v2/api-docs/**"); web.ignoring().antMatchers("/swagger.json"); web.ignoring().antMatchers("/swagger-ui.html"); web.ignoring().antMatchers("/swagger-resources/**"); web.ignoring().antMatchers("/webjars/**"); web.ignoring().antMatchers("/configuration/ui", "/swagger-resources", "/configuration/security"); } 当我尝试从浏览器访问 API 时,我得到以下信息: 我在邮递员或失眠中尝试时得到这个: 浏览器中的网页是这样的: 即使在 insomnia/Postman(200 OK)中,UI 也无法正确呈现,并且浏览器给我错误。 JSON 和 HTML 在失眠中变得很好。 我试图从 MS Edge 和 chrome 中访问 URL。 有人可以帮我解决这个问题吗?

回答 0 投票 0

使用 expressJS-swaggerui 渲染页面

当我尝试使用 swagger-ui-express 插件调用从 expressJS 呈现 swaggerUI 的路由时,我得到一个空白页面。 基本上,我有一条路线“/api-docs/prd”。当调用路线时...

回答 1 投票 0

在 NodeJS API 上下载 Swagger JSON 文件

我是 swagger 的新手,我已经编写了 swagger UI 文档的逻辑,但我需要将记录的 API 文档下载为 JSON 文件,你能帮我吗谢谢。 const docs = require('./docs'); 应用程序...

回答 1 投票 0

使用 springdoc-openai-ui 和 Spring Boot 生成的 Swagger 时将观众传递给授权服务器

我注意到,在使用我自动生成的 Swagger UI 客户端进行身份验证时,我无权访问自定义 Auth0 权限——事实上,访问令牌用于进行经过身份验证的重新...

回答 1 投票 0

在 Swagger UI 中看不到来自我的控制器服务的请求

我知道这个问题已经被问过很多次了。但是,经过多次尝试,我还没有找到解决问题的方法。 我有一个使用 Spring、MongoDB 和 Swagger 的 Java 项目 (v17) 来允许服务...

回答 0 投票 0

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