1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > java url加密解密 java URL 编码解码 该如何解决

java url加密解密 java URL 编码解码 该如何解决

时间:2019-08-31 11:05:56

相关推荐

java  url加密解密 java URL 编码解码 该如何解决

java URL 编码解码

我写了两个接口一个是对字符串加密的,一个是解密的。加密的可以通过调用接口生成加密字符串如下:

Oc0PEwKrLzHqT25hYLhWP5wlk5HROPJoWC3chlqMHBoxLQ/WUcbKwsamjy+N2RsBDwFnFegg1tQXmuvWUcuxIMKwMC8RCjWjgVVCH385LBiXkGLM+q9hhlfEMjavM0vHfvx02/Af+njixF7M2yuVmf6lhH2BnQ2j4sR12HvfRHbDnzKQbhrydNh7k90qB43B

可是解密的时候在MAIN方法测试可以解密,但是通过URL调用接口的时候就出错了,听说是url编码问题不太了解,如下是解密的接口:/**

*对密钥解密

*@paramenStr

*@return

*@throwsException

*/

@ResponseBody

@RequestMapping(value="/deCryptKey/{enStr}",method=RequestMethod.GET)

publicStringdeCryptKey(@PathVariable("enStr")StringenStr)throwsException{

//enStr=newString(enStr.getBytes("iso-8859-1"),"utf-8");

//enStr=.URLDecoder.decode(enStr,"utf-8");

StringdeStr=KmService.deCryptKey(enStr);

returndeStr;

}

------解决思路----------------------

你可以尝试用URLEncoder再加密一次。

------解决思路----------------------

没猜错的话,你应该是

加密:字符串->url传输->加密后的字符串

解密:解密后的字符串->url传输->字符串

很明显在url编码的时候出了问题,用spring框架么,问题是比较多的,别特是其内部写死了编码方式,so你需要两部操作

server.xml添加

web.xml添加

EncodingFilter

org.springframework.web.filter.CharacterEncodingFilter

encoding

UTF-8

forceEncoding

true

EncodingFilter

*.action

EncodingFilter

*.jsp

------解决思路----------------------

把已经加密的字符串再编码一次,获取到后再解码

//step1

Stringcode="Oc0PEwKrLzHqT25hYLhWP5wlk5HROPJoWC3chlqMHBoxLQ/WUcbKwsamjy+N2RsBDwFnFegg1tQXmuvWUcuxIMKwMC8RCjWjgVVCH385LBiXkGLM+q9hhlfEMjavM0vHfvx02/Af+njixF7M2yuVmf6lhH2BnQ2j4sR12HvfRHbDnzKQbhrydNh7k90qB43B

"

//编码

StringurlEnCode=URLEncoder.encode(code,"UTF-8");

//step2

//解码

StringurlDeCode=URLDecoder.decode(urlEnCode,"UTF-8");

//再解码

StringdeStr=KmService.deCryptKey(enStr);

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。