一种另类的解决URL中文乱码问题--对中文进行加密、解密处理
2013-07-19 08:13
549 查看
情景:在资源调度中,首先用户需要选择工作目标,然后跟据选择的工作目标不同而选择不同的账号和代理ip。处理过程如下:点击选择账号,在js中获取工作目标对工作目标进行两次编码(encodeURI(encodeURI(gzmb))),在后台,对工作目标进行解码,然后构建URL。
如下:
如图
可知解码是成功的。但是最后得到的结果却是将所有的账号全部选择出来,并没有选择对应工作目标的账号。查看后台。URL跳转得到的工作目标值如下所示的:
在这里我立马想到URL中文乱码,于是我在后台进行解码操作。但是不知道为什么,换了几种办法都不可以。在这里我想到了以前的办法,通过js两次编码,重构URL。所以在后台我将工作目标传递出来,然后通过js两次编码,重新构建URL。做到这里时我发现,这不就是一开始的么?既然这样,第一步为什么需要解码呢,直接传递过来不就可以了么?将第一步的解码去掉,还真的可以。在进行测试,ie7以上的、火狐、谷歌,唯独ie6不可以(这个原因不知道为什么?求解释)。在这里我只能想到一种解决办法了,使用form表单来进行处理。虽然可以成功,但是这是万不得已的办法。
“有些东西只要你放在心上,过段时间后你一定可以想到一种解决办法”。下班后在车上突然想到了一种另类的办法—在后台对工作目标进行加密操作,赋值给url,然后在另外一边进行解密操作不就可以了。如下
//构建账号选择条件
URL如下所示:
在那边进行解密操作
得到gzmb值如下所示
注:DecodeUtils是一个功能非常强大的加密解密的工具类。
这里所提供的并不是什么高深的技术,只是提供一种另类的解决方法。这个事情告诉了我,没有做不到的事情,只有想不到的办法。
如下:
String gzmb = URLDecoder.decode(request.getParameter("gzmb"), "UTF-8"); Stringurl = "/wlzh/queryPageList.action?accountO.zt=1&accountO.gzmb="+gzmbJiami+"&accountO.accountIsYx=1";
如图
可知解码是成功的。但是最后得到的结果却是将所有的账号全部选择出来,并没有选择对应工作目标的账号。查看后台。URL跳转得到的工作目标值如下所示的:
在这里我立马想到URL中文乱码,于是我在后台进行解码操作。但是不知道为什么,换了几种办法都不可以。在这里我想到了以前的办法,通过js两次编码,重构URL。所以在后台我将工作目标传递出来,然后通过js两次编码,重新构建URL。做到这里时我发现,这不就是一开始的么?既然这样,第一步为什么需要解码呢,直接传递过来不就可以了么?将第一步的解码去掉,还真的可以。在进行测试,ie7以上的、火狐、谷歌,唯独ie6不可以(这个原因不知道为什么?求解释)。在这里我只能想到一种解决办法了,使用form表单来进行处理。虽然可以成功,但是这是万不得已的办法。
“有些东西只要你放在心上,过段时间后你一定可以想到一种解决办法”。下班后在车上突然想到了一种另类的办法—在后台对工作目标进行加密操作,赋值给url,然后在另外一边进行解密操作不就可以了。如下
//构建账号选择条件
String gzmb= URLDecoder.decode(request.getParameter("gzmb") == null ? "" : request.getParameter("gzmb"), "utf-8"); String gzmbJiami = DecodeUtils.getJiamiData(gzmb); Stringurl = "/wlzh/queryPageList.action?accountO.zt=1&accountO.gzmb="+gzmbJiami+"&accountO.accountIsYx=1";
URL如下所示:
在那边进行解密操作
String gzmbJiemi = DecodeUtils.getJiemiData(accountO.getGzmb()); accountO.setGzmb(gzmbJiemi); PageResultInfo<Account_Bean>pageResultInfo = service.queryAccountPageResultBy(accountO , pageInfo,user);
得到gzmb值如下所示
注:DecodeUtils是一个功能非常强大的加密解密的工具类。
这里所提供的并不是什么高深的技术,只是提供一种另类的解决方法。这个事情告诉了我,没有做不到的事情,只有想不到的办法。
相关文章推荐
- 一种另类的解决URL中文乱码问题--对中文进行加密、解密处理
- 一种另类的解决URL中文乱码问题--对中文进行加密、解密处理
- 解决URL中文乱码问题--对中文进行加密、解密处理
- 一种另类的解决URL中文乱码问题
- 通过Base64加密解密解决RSA中文解密乱码问题
- javascript 对url参数进行编码(解决中文乱码问题)
- url里含有中文参数,已get方式提交到接口,中文编码后有乱码问题的一种解决
- ORACLE 字段AES算法加密、解密(解决中文乱码问题)
- java实现AES加密(解决中文解密后乱码问题,解决传输字符串后解密报错的问题)
- jsp,java中文乱码问题另类解决方案,jni加密、解密编码
- Javascript escape 解决 Jquery Ajax 异步请求 URL中文传参乱码问题 一般处理程序Handler获取参数
- 解决get方法传递URL参数中文乱码问题
- 我的Android进阶之旅------>Android使用cmd窗口进行adb logcat时出现中文乱码问题的解决办法
- 解决jsp中获取url传参中文乱码问题
- 在ASP中用VBS对汉字进行网址编码解决FLASH图表的中文乱码问题
- java解决Url带中文参数乱码问题
- 解决 ThinkPHP URL 中文乱码问题
- flex URLRequest传中文参数到后台乱码问题解决方法
- url传中文乱码问题解决办法
- 解决get方法传递URL参数中文乱码问题