HttpClient使用get方法拼接參數時踩過的坑

在將Map中的內容轉化成URI中的參數時,出現了一些問題,特寫此文以記錄其解決過程。

最先開始使用map.toString()方法,結果轉成的string中變成key=value的形式,uri發到對方服務器時就解析出錯。

後面想把map先轉json再轉String,使用了JSON.toJSONString()方法,但是還是拋了無法連接的異常。

再檢查,發現json轉會變成"key":"value",而對方支持的格式不支持雙引號,就使用了replace("\"", ''')。

ps:有人提出這裏使用replace方法太過暴力,可能將URI中其他地方的也替換掉,我這邊是在Map中轉String這個流程中替換,只會影響到這個參數,而對URI的其他部分及參數不會執行這部分替換操作。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章