利用swagger-ui頁面傳送POST請求引數遇到的中文引數亂碼的問題
阿新 • • 發佈:2018-12-29
前端時間將同事開發的半成品專案介面做成視覺化介面,即swagger-ui,用於展示。這個如何配置我就不多說了,網上相關的教程應該也是一搜一大堆......
本地測試了相關介面後,除了幾個介面返回:
{"resultData":"","serviceTime":1517211417338,"resultStatus":"-1","resultInfo":"無資料或者type和model引數不對"}
其他一切正常, 這個專案也不是我參與開發的,當時也沒想太多,也忘記去檢視部署在伺服器上的資料庫的資料去比對資料,直到pm喊我去檢視沒有返回資料的原因,em.........
遠端進行除錯eclipse,結果發現,好傢伙,30多個接口裡唯一一個用到中文引數的介面,很正常的引數亂碼了,當初 天真的
認為同事應該是解決了這個問題,但是結果很顯然..最後導致了MQ接收端查詢不到MQ傳送端推送來的json文字,異常被處理成無
資料的結果返回到前端
在不考慮新增額外的介面並且含有中文引數的情況下:
String tt = "";
try {
tt = new String(map.get("model")[0].getBytes("ISO-8859-1"),"utf-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
這樣處理勉強能食用..
之前參考網上的教程,在伺服器的tomcat上配置了URIEncoding,不過沒有半毛錢用,後來知道這方法適用於get提交。