主题 : JEECMS v5版本中获取参数%错误BUG修复包 |
级别: 超级版主
|
1# 发表于:2013-11-06 11:45:10 IP:59.140.*.*
|
||||
---|---|---|---|---|---|
级别: 童生
|
4# 发表于:2013-11-06 16:38:53 IP:210.206.*.*
回复第1楼 这样做问题依旧还在的 只是在首页搜索的时候不会而已!当你在会员更改信息或者投稿的时候输入%%两个以上这个东西时候(不知道为什么一个的时候不会) 问题依旧还在!为什么呢 !
XssHttpServletRequestWrapper.java 中 /*String paramValues[]=s.split("="); //单独的%会转码异常,替换成全角% for(String v:paramValues){ if(StringUtils.isNotBlank(v)&&(v.equals("%")||v.equals("%25"))){ s=s.replace(v, "%"); } }*/ 这段代码根本不会执行!因为在会员中心传过去的字符串中根本没有“=”这个字符串 所有也不会执行!在首页搜索框因为传到后台的是q=%% 之类的字样 所有会执行! 个人认为没有必要这么这么复杂 只需要两句语句即可!如下图: 只需要把获取的字符串把所有的% 或者是%25 替换即可! RequestUtils.java 中按照这个也应该是可以的! |
||
---|---|---|---|
级别: 总版主
|
5# 发表于:2013-11-06 16:50:44 IP:59.140.*.*
回复4楼,会员中心大部分的功能都是.jspx后缀的,filter是会过滤的“会员中心传过去的字符串中根本没有“=”这个字符串 所有也不会执行”,您测试了吗?get方法和post方法都会去执行检查代码部分的。不只是前台搜索,刚测试了会员修改资料 %会替换成中文全角百分号
|
||
---|---|---|---|
级别: 童生
|
6# 发表于:2013-11-06 17:26:12 IP:210.206.*.*
回复第5楼 测试了!你在会员中心那里输入两个%%试试!不过我这样改的话也是不行的。搜索那个传到后台是经过转码的!而会员的传到后台是没有转码的!看看下图:两次输出的结果是一样的。
|
||
---|---|---|---|
级别: 举人
|
7# 发表于:2013-11-07 02:02:48 IP:27.28.*.*
5.1还不完善啊
|
||
---|---|---|---|
级别: 总版主
|
8# 发表于:2013-11-07 09:13:10 IP:115.65.*.*
回复7楼,系统正常使用没有问题,这个问题其实很多系统都存在。重新下载后对XssHttpServletRequestWrapper.java文件有修改
|
||
---|---|---|---|