在需要重定向的url中如果有参数,那么可能会出现问题
比如:
abc.action?reurl=cde.action?p1=a&p2=2&p3=3
我在下一个action接受reurl参数值时,得到的是cde.action?p1=a,后面的都没了,这个是因为url需要转义
abc.action?reurl=cde.action%3Fp1=a%26p2=2%26p3=3
下面转载文章:
url转义字符原理
如果表单的action为list.jsf?act=go&state=5
则提交时通过request.getParameter可以分别取得act和state的值。
如果你的本意是act='go&state=5'这个字符串,那么为了在服务端拿到act的准确值,你必须对&进行转义
[预备知识]
对与通过get方式提交的url,浏览器在提交前首先根据http协议把一一个的参数及其值解析配对。而url的参数间是通过&分割的,这就是浏览器进行参数配置的分割依据。如果你的参数值中含有&等url特殊字符,那么你在服务器端就会拿到意想不到的值。所以必须对url的特殊字符进行转义。
编码的格式为:%加字符的ASCII码,即一个百分号%,后面跟对应字符的ASCII(16进制)码值。例如 空格的编码值是"%20"。
下表中列出了一些URL特殊符号及编码
十六进制值
1. + URL 中+号表示空格 %2B
2. 空格 URL中的空格可以用+号或者编码 %20
3. / 分隔目录和子目录 %2F
4. ? 分隔实际的 URL 和参数 %3F
5. % 指定特殊字符 %25
6. # 表示书签 %23
7. & URL 中指定的参数间的分隔符 %26
8. = URL 中指定参数的值 %3D
所以上述的action你应该写成list.jsf?act=go%26state=5
引用 :http://alipay.iteye.com/blog/68412
分享到:
相关推荐
把URL参数里的地址转义,把URL参数里的地址转义,把URL参数里的地址转义,把URL参数里的地址转义,把URL参数里的地址转义,把URL参数里的地址转义,把URL参数里的地址转义,把URL参数里的地址转义,
Url特殊字符 转移字符 Url转义字符 %00 NUL (null) / Ctrl+Shift+@ 到 %FF ÿ
目录 网址URL中特殊字符转义编码URL特殊字符转义,URL中一些字符的特殊含义,基本编码规则如下:如果需要在URL中用到,需要将这些特殊字符换成相应的十六进制的值预备知识 为什么需要Url编码 哪些字符需要编码 US...
教你如何完全理解转义符号
在 C 语言中,转义字符是以反斜杠(\)开头的特殊字符,用于表示不能直接输入的字符。以下是 C 语言中一些常用的转义字符: \n:换行符,移动到下一行开头。 \t:制表符,移动到当前行的下一个制表符位置。 \b:...
本文给大家分享一段给url参数加密解密的javascript代码,非常的好用,有需要的小伙伴直接拿走吧
用于中文和特殊符号路径转换,可以读取中文等一系列特殊符号
本期主要讲了转义字符的说明,这个转义字符说明虽然比较简单,但是也是要背下来的。因为这个很重要!
正则表达 转义字符正则表达 转义字符正则表达 转义字符正则表达 转义字符正则表达 转义字符
HTML转义字符大全:ISO Latin-1字符集,各种字符的转义
0x01 漏洞实例某次测试中,遇到一个很奇葩的XSS,我们先来加一个双引号,看看输出:如图,可以看到,双引号被转义了,这时候是不是有种想放弃的想法,抱着尝试的状
URL应用程序的Base64编码,解码,转义和取消转义。 原料药 const base64url = require('base64-url') 例子 base64url . encode ( 'Node.js is awesome.' ) // returns Tm9kZS5qcyBpcyBhd2Vzb21lLg base64url . ...
常用HTML转义字符常用HTML转义字符
但有时需求是在HTML页面上使用这些符号,所以需要定义它的转义字符串。 有些字符在ASCII字符集中没有定义(如版权符号“:copyright:”)。因此需要使用转义字符(“:copyright:”对应的转义字符是“:copyright:”)...
关于转义字符串整理的一些资料,包括转义字符穿的解释、组成信息和转义字符的使用
当你不明白DTU数据传输格式以及转义说明时,试试下载。
html转义,在页面中的一些特殊符号的转义html转义,在页面中的一些特殊符号的转义
转义字符.txt
HTML_转义字符 HTML_转义字符