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的其他部分及参数不会执行这部分替换操作。

 

你可能感兴趣的:(工作项目笔记)