介面問題以及解決方案彙總
阿新 • • 發佈:2019-01-05
需求描述
省內介面轉為全國統一介面,作為介面中轉,主要是承上啟下的作用。
保持前端請求以及引數不變的情況下,業務邏輯集中處理;
提供給第三方或者四方?!呼叫;
當介面變更時只更改當前介面專案即可。
問題1
java.net.URISyntaxException //Http Get請求報出此次錯誤。
問題原因:
第三方介面需要將引數部分進行編碼後提交。 原介面進行了編碼傳到中轉介面這裡仍然需要獲取並重新編碼傳給第三方。
解決辦法:
重新進行編碼
URLEncoder.encode(param.toJSONString(),"utf-8")
問題2
關於介面請求引數JSON格式的重新封裝問題。
問題原因:
請求引數param是json格式的,接收過來的引數不能直接toJSONString,編碼後傳給第三方
解決辦法:
if (map.containsKey("param")) {
JSONObject param = JSONObject.parseObject((String)map.get("param"));
url = url + "¶m=" + URLEncoder.encode(param.toJSONString(),"utf-8");
}
針對介面呼叫做簡單的記錄,方便今後檢視。
其實最好的框架是適合專案本身的,與高階或所謂低端無關,越是簡單的反而更能解決問題,提升效率。