【Swagger】2.不在生產環境暴露,可以修改預設地址

陆陆无为而治者發表於2024-09-20

不對外暴露介面

一般來說,介面給內部人員使用和測試的,不對生產環境暴露。此時應該如何設定呢?可以在Swagger配置檔案中新增註解:

@Profile({"環境名稱1","環境名稱2"} 或@Profile("環境名稱")

這裡,註解中不新增生產環境。

此時,開發環境和測試環境都可檢視。理論上,應該不可檢視到api,但我看到了未設定分組的所有介面o(╥﹏╥)。可能swagger2和swagger3方法不同。

這裡,我在生產環境的配置檔案(application-prod.yml)檔案設定了swagger-ui不顯示

# 不顯示swagger-ui
springfox:
  documentation:
    swagger-ui:
      enabled: false

此時,我們的生產環境成功遮蔽了swagger。

修改預設Swagger地址

預設的Swagger地址為 {url:port}/swagger-ui/index.html 。

Swagger2:配置檔案新增 server.contextPath=/swagger2,此時Swagger的地址為:{url:port}/swagger2/swagger-ui/index.html

Swagger3: 配置檔案(application.yml)新增地址

springfox:
  documentation:
    swagger-ui:
      base-url: /swagger-ui.html

此時,Swagger的訪問地址為:{url:port}/swagger-ui/index.html

相關文章