java.net.URISyntaxException 问题解决

2020-04-07 16:02:57来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

先上代码:

Properties pro = PropertyUtil.getPropertiesInfo("xxx.properties");
String url = pro.getProperty("xxxxxxx");

HttpPost httpPost = new HttpPost(url);

  自己在本地开发的时候,一直没有问题,上了测试环境后一直报错:

java.net.URISyntaxException: Illegal character in query at index 65

起初我在网上也查了一些这个问题,都说地址中涉及了特殊字符,如‘|’‘&’等。要通过new一个新的url的方式解决(具体不细说了,可自行搜索),我自己也按这种方式改了,
但在执行返回代码的时候报错:

Target host must not be null, or set in parameters

 

HttpResponse response = client.execute(httpPost); 

 

  解决先前的问题,又遇到了新的问题,就像会不会解决问题的方式不对,果不其然,打开配置文件xxx.properties,详细查看一番,发现在配置的地址最后面多了一个空格,

删除后,解决。

  最后,列几个特殊字符及十六进制值

           特殊含义                                               十六进制值 
1.+ 表示空格(在 URL 中不能使用空格)              %20 
2./ 分隔目录和子目录                                              %2F 
3.? 分隔实际的 URL 和参数                                    %3F 
4.% 指定特殊字符                                                   %25 
5.# 表示书签                                                            %23 
6.& URL 中指定的参数间的分隔符                          %26 

 


原文链接:https://www.cnblogs.com/zxf-java/p/12653512.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:BigDecimal转String

下一篇:程序员被提 bug 之后的反应,太真实了!