xuhy
2025-01-07 88ac2574d89aed7c28b9c0370b19b8bb2d0364eb
ruoyi-gateway/src/main/java/com/ruoyi/gateway/handler/SwaggerHandler.java
@@ -1,50 +1,50 @@
package com.ruoyi.gateway.handler;
import java.util.Optional;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Mono;
import springfox.documentation.swagger.web.SecurityConfiguration;
import springfox.documentation.swagger.web.SecurityConfigurationBuilder;
import springfox.documentation.swagger.web.SwaggerResourcesProvider;
import springfox.documentation.swagger.web.UiConfiguration;
import springfox.documentation.swagger.web.UiConfigurationBuilder;
@RestController
@RequestMapping("/swagger-resources")
public class SwaggerHandler {
   private final SwaggerResourcesProvider swaggerResources;
   @Autowired(required = false)
   private SecurityConfiguration securityConfiguration;
   @Autowired(required = false)
   private UiConfiguration uiConfiguration;
   @Autowired
   public SwaggerHandler(SwaggerResourcesProvider swaggerResources) {
      this.swaggerResources = swaggerResources;
   }
   @GetMapping("/configuration/security")
   public Mono<ResponseEntity<SecurityConfiguration>> securityConfiguration() {
      return Mono.just(new ResponseEntity<>(
            Optional.ofNullable(securityConfiguration).orElse(SecurityConfigurationBuilder.builder().build()),
            HttpStatus.OK));
   }
   @GetMapping("/configuration/ui")
   public Mono<ResponseEntity<UiConfiguration>> uiConfiguration() {
      return Mono.just(new ResponseEntity<>(
            Optional.ofNullable(uiConfiguration).orElse(UiConfigurationBuilder.builder().build()), HttpStatus.OK));
   }
   @SuppressWarnings("rawtypes")
   @GetMapping("")
   public Mono<ResponseEntity> swaggerResources() {
      return Mono.just((new ResponseEntity<>(swaggerResources.get(), HttpStatus.OK)));
   }
}
//package com.ruoyi.gateway.handler;
//
//import java.util.Optional;
//
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.http.HttpStatus;
//import org.springframework.http.ResponseEntity;
//import org.springframework.web.bind.annotation.GetMapping;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RestController;
//import reactor.core.publisher.Mono;
//import springfox.documentation.swagger.web.SecurityConfiguration;
//import springfox.documentation.swagger.web.SecurityConfigurationBuilder;
//import springfox.documentation.swagger.web.SwaggerResourcesProvider;
//import springfox.documentation.swagger.web.UiConfiguration;
//import springfox.documentation.swagger.web.UiConfigurationBuilder;
//
//@RestController
//@RequestMapping("/swagger-resources")
//public class SwaggerHandler {
//   private final SwaggerResourcesProvider swaggerResources;
//   @Autowired(required = false)
//   private SecurityConfiguration securityConfiguration;
//   @Autowired(required = false)
//   private UiConfiguration uiConfiguration;
//
//   @Autowired
//   public SwaggerHandler(SwaggerResourcesProvider swaggerResources) {
//      this.swaggerResources = swaggerResources;
//   }
//
//   @GetMapping("/configuration/security")
//   public Mono<ResponseEntity<SecurityConfiguration>> securityConfiguration() {
//      return Mono.just(new ResponseEntity<>(
//            Optional.ofNullable(securityConfiguration).orElse(SecurityConfigurationBuilder.builder().build()),
//            HttpStatus.OK));
//   }
//
//   @GetMapping("/configuration/ui")
//   public Mono<ResponseEntity<UiConfiguration>> uiConfiguration() {
//      return Mono.just(new ResponseEntity<>(
//            Optional.ofNullable(uiConfiguration).orElse(UiConfigurationBuilder.builder().build()), HttpStatus.OK));
//   }
//
//   @SuppressWarnings("rawtypes")
//   @GetMapping("")
//   public Mono<ResponseEntity> swaggerResources() {
//      return Mono.just((new ResponseEntity<>(swaggerResources.get(), HttpStatus.OK)));
//   }
//}