2.7.1.RELEASE 版本及以上版本prod 环境怎么开启swagger访问

Blade 未结 1 944
1418806370
1418806370 剑圣 2021-05-21 15:10

一、该问题的重现步骤是什么?

目前 

bladex-tool中 SwaggerAutoConfiguration.class 中已经不包含 @Profile({"dev","test","prod"}) 的设置了 那现在需要怎样操作才能打开接口文档的访问呢 目前请求接口
  /v2/api-docs 返回的参数是 You do not have permission to access this page


二、你期待的结果是什么?实际看到的又是什么?

prod环境下能正常访问接口文档


1条回答
  • 2021-05-21 15:32
    解决了在 SwaggerLauncherServiceImpl.java 中设置
    @AutoService(LauncherService.class)
    public class SwaggerLauncherServiceImpl implements LauncherService {
       @Override
       public void launcher(SpringApplicationBuilder builder, String appName, String profile, boolean isLocalDev) {
          Properties props = System.getProperties();
          if (profile.equals(AppConstant.PROD_CODE)) {
    //       props.setProperty("knife4j.production", "true"); //注释此处 在 nacos中可以手动进行设置 此功能是否打开
          }
       }
    
       @Override
       public int getOrder() {
          return Ordered.LOWEST_PRECEDENCE;
       }
    }
    
    nacos blade.yaml config
    knife4j:
        #正式环境中是否关闭文档
        production: true



    0 讨论(0)
提交回复