今天接到一个工作任务,需要和第三方数据接口对接,接口文档中需要在URL中拼接base64处理的参数;
参数加密及一系列处理代码很快开发完成,在浏览器窗口中模拟请求也测试通过。(很开心)
然后在后台代码实现HttpClient的时候却遇到了钉子,请求却一直不行,并且控制台报出java.net.MalformedURLException: Illegal character in URL的异常
是代码问题?
网上百度寻求解决方案。。。大多说URL中不能有base64处理的参数,因为有特殊符号,另外也有前辈说是base64包引用错误,可是我仔细对照是文章中推荐的org.apache.commons.codec.binary.base64。
但是还是不行啊
于是把URL在控制台中输出 结果发现惊天秘密
URL怎么折行了?正常么?
URL.replaceAll(“\r|\n”, “”);处理下
再次执行。。。
哈哈。。。完美请求到数据!!!