博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
URL中的特殊字符
阅读量:4289 次
发布时间:2019-05-27

本文共 1116 字,大约阅读时间需要 3 分钟。

URL(Uniform Resoure Locator,统一资源定位器)是Internet中对资源进行统一定位和管理的标志。

一个完整的URL包括如下内容:
1.         应用协议名称,包括http,ftp,file等标志
2.         资源定位,是由(.)分割等网络路径
3.         端口号,按照规定,http应用端口是80,telnet协议应用端口是23。
4.         服务器中的文件路径
5.         文件中的编码位置
一个完整的URL如下:

URL无法显示某些特殊符号,这个时候就要使用编码了。编码的格式为:一个百分号,后面跟对应字符的ASCII(16进制)码值。例如 空格的编码值是"%20"。(ASCII参考)

有些字符在URL中具有特殊含义,基本编码规则如下:
            特殊含义                                               十六进制值 
1.+ 表示空格(在 URL 中不能使用空格)                   %20 
2./ 分隔目录和子目录                                              %2F 
3.? 分隔实际的 URL 和参数                                      %3F 
4.% 指定特殊字符                                                  %25 
5.# 表示书签                                                         %23 
6.& URL 中指定的参数间的分隔符                             %26 
java中URL 的编码和解码函数
java.net.URLEncoder.encode(String s)和java.net.URLDecoder.decode(String s);

文档来自:  感谢~

但是,restTemplate的get请求中无法识别编码,需要直接使用特殊符号,如下:

通过fiddler获取的url为:

/exe.php?cwd=MainFrame/BIP/creat/&pyName=creatPo.py&exeString=python%20./MainFrame/BIP/creat/creatPo.py%201000336%2010%206%2098%200%20bjjdz%20bjylgxgs%2043%202%201%203020150326000569%200&t=1&tempFile2Del= HTTP/1.1

%20 表示空格但是restTemplate的get方法无法识别,需要使用空格

String result = restTemplate.getForObject("/exe.php?cwd=MainFrame/BIP/creat/&pyName=creatPo.py&exeString=python ./MainFrame/BIP/creat/creatPo.py 1000336 10 6 98 0 bjjdz bjylgxgs 43 2 1 3020150326000569 0&t=1&tempFile2Del= HTTP/1.1", String.class);

 

转载地址:http://sblgi.baihongyu.com/

你可能感兴趣的文章
设计模式-装饰模式(Decorator)
查看>>
git-子模块submodule
查看>>
设计模式-策略模式(Strategy)
查看>>
设计模式-观察者模式(Observer)
查看>>
java浅拷贝(shallow clone)与深拷贝(deep clone)
查看>>
Elasticsearch-terms搜索及结果优化
查看>>
Elasticsearch-对一个field进行多值全文本搜索
查看>>
Elasticsearch-best_fileds和most_fields策略分析以及cross-fields弊端的解决
查看>>
Elasticsearch-近似搜索
查看>>
Elasticsearch-前缀、通配符、正则、模糊搜索详解
查看>>
Elasticsearch-搜索推荐
查看>>
java-nio之Selector组件
查看>>
java-编码解密
查看>>
netty源码分析之-Future、ChannelFuture与ChannelPromise详解(3)
查看>>
redis主从集群的搭建
查看>>
redis cluster集群搭建与深入分析(1)
查看>>
netty源码分析之-引导详解(4)
查看>>
redis cluster节点的添加与删除(2)
查看>>
nginx+redis+tomcat三级缓存架构讲解
查看>>
Reactor模式详解
查看>>