swagger報錯No handler found for GET /swagger-ui.html
阿新 • • 發佈:2019-01-08
今天下載jeeweb框架下來研究,其他還有,就是swagger老是出不來。報錯:No handler found for GET /swagger-ui.html
後來搜尋才發現,這個錯誤,是因為資源對映問題導致的。
我們在訪問http://127.0.0.1:8188/swagger-ui.html 時,這個swagger-ui.html相關的所有前端靜態檔案都在springfox-swagger-ui-2.8.jar裡面。目錄如下:
Spring Boot自動配置本身不會自動把/swagger-ui.html這個路徑對映到對應的目錄META-INF/resources/下面。我們加上這個對映即可。程式碼如下:
1 @Configuration
2 class WebMvcConfig extends WebMvcConfigurerAdapter {
3 @Override
4 void addResourceHandlers(ResourceHandlerRegistry registry) {
5 registry.addResourceHandler("swagger-ui.html")
6 .addResourceLocations("classpath:/META-INF/resources/")
7
8 registry.addResourceHandler("/webjars/**")
9 .addResourceLocations("classpath:/META-INF/resources/webjars/")
10 }
11 }
新增好後,重啟,成功!