zoukankan      html  css  js  c++  java
  • java.net.URISyntaxException 问题解决

    先上代码:

    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 

  • 相关阅读:
    算法模板——线性欧拉函数
    2818: Gcd
    1688: [Usaco2005 Open]Disease Manangement 疾病管理
    3314: [Usaco2013 Nov]Crowded Cows
    3450: Tyvj1952 Easy
    1664: [Usaco2006 Open]County Fair Events 参加节日庆祝
    1054: [HAOI2008]移动玩具
    1432: [ZJOI2009]Function
    1121: [POI2008]激光发射器SZK
    1113: [Poi2008]海报PLA
  • 原文地址:https://www.cnblogs.com/zxf-java/p/12653512.html
Copyright © 2011-2022 走看看