我的swagger插入到我的spring引導應用程序中。 Spring引導允許您爲每個環境擁有屬性文件。有沒有辦法在生產環境中禁用swagger?如何關閉生產中的swagger-ui
回答
將您的swagger配置放入單獨的配置類中,並使用@Profile
註釋進行註釋 - >以便僅在特定配置文件中將其掃描到Spring上下文中。
例子:
@Configuration
@EnableSwagger2
@Profile("dev")
public class SwaggerConfig {
// your swagger configuration
}
可以比定義配置您的春天啓動的應用程序通過命令行中運行:通過配置文件--spring.profiles.active=dev
或:spring.profiles.active=dev
。
Read this section of Spring Boot docs for more info about @Profile
這是我的配置類:
@Configuration
@Profile("swagger")
@EnableSwagger2
public class SwaggerConfig {
@Value("${info.build.version}")
private String buildVersion;
@Bean
public Docket documentation() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(regex("/rest/.*"))
.build()
.pathMapping("/")
.apiInfo(metadata());
}
private ApiInfo metadata() {
return new ApiInfoBuilder()
.title("API documentation of our App")
.description("Use this documentation as a reference how to interact with app's API")
.version(buildVersion)
.contact(new Contact("Dev-Team", "https://dev-website", "[email protected]"))
.build();
}
}
無論我需要揚鞭,我的個人資料swagger
添加到環境變量SPRING_PROFILES_ACTIVE
這實質上是重複[另一個更老的答案](https://stackoverflow.com/a/37796782/1240557)(即「使用配置文件」) – kryger
/swagger-ui.html仍然可用,但沒有辦法。有沒有辦法禁止URL? – gstackoverflow
- 1. PrintWriter的產生java.io.IOException:關閉
- 2. 關閉生產中的Node.js/JavaScript斷言
- 3. JMS生產者關閉
- 4. 產生java.io.IOException:UT010029:流關閉
- 5. 如何關閉在Cordova/PhoneGap中進行生產的console.log()?
- 6. 關閉AlertDialog時產生的NPE
- 7. 如何重新連接一旦關閉卡夫卡生產者?
- 8. 我可以在生產環境中關閉flyway上的「cleanTask」
- 9. 關閉生產中的活動記錄日誌
- 10. Eclipse Wizard在生產環境中的「完成」時未關閉
- 11. 關於生產
- 12. SwaggerUi REST方法 - 方法產生和使用完全相同的MIME類型
- 13. 如何關閉加售和相關產品部分的緩存?
- 14. 從Applescript中關閉Excel而不會產生錯誤
- 15. SharedPreferences在android程序中產生強制關閉
- 16. Rails 3.0 - 在生產中關閉指南針/ SASS - 樣式表404
- 17. 我應該在生產環境中開啓還是關閉output_buffering?
- 18. 如何當關閉事件發生時
- 19. 封閉測試到生產
- 20. 私人財產和關閉
- 21. 關閉打開的記錄集會產生運行時錯誤
- 22. 如何關閉mfmailcomposerview中的關鍵板
- 23. 如何在artemis關閉時從生產者那裏獲取消息?
- 24. 如何關閉
- 25. API網關產生的REG_LOG
- 26. 如何中止500生產?
- 27. 如何在eclipse中關閉自動生成的代碼?
- 28. 如何關閉在Selenium中自動生成的iframe Java
- 29. 如何在Rails 3中關閉RSpec 2的生成器?
- 30. 如何關閉Intellij IDEA中的自動括號生成?
我們已經做到了這一點,它看來,擴展 - > swagger-ui.html仍然顯示,即使api的內容沒有顯示。有沒有辦法做到這樣,swagger-ui.html甚至不會生成? – user301693
@ user301693如果您使用的是Maven,您可以在特定的Maven配置文件中加載Swagger依賴關係,這應該可以做到這一點。 – g00glen00b
@ g00glen00b,並且對於PROD,與其他環境有不同的工件?我想QA和OPS的人不會對此感到高興。 – luboskrnac