1. 程式人生 > >使用swagger 遇到 Can't read swagger JSON 錯誤

使用swagger 遇到 Can't read swagger JSON 錯誤

         最近在做專案的過程中,使用到了swagger ,按照swagger 正常設定之後,在瀏覽器中檢視介面的時候卻遇到了 Can't read swagger JSON 錯誤,剛開始沒有頭緒,由於不是很熟悉swagger,無法定位錯誤。但是在同事給的tomcat中卻能很好的工作,這肯定是tomcat設定引起的問題,所以對比了兩個tomcat的設定文件,發現以下不同,第一張是tomcat的預設設定,另一張是修改後可以正常工作的tomcat的配置檔案:

          可以發現只是存在了一個URLEncoding的設定,猜測原因可能是因為存在中文路徑的問題。在把SwaggerConfig中的

     介面宣告中的最後一個引數修改成英文後,即使不加URLEncoding的設定也可以正常訪問,所以可以確定就是中文路徑引起的問題。在查詢介面的時候,swagger的請求路徑如下圖:

  如果group引數存在中文,而沒有設定URLEncoding,那就會無法解析。

這只是一個錯誤的解決方案,具體原理不做分析。