解决请求url中含有编译后的特殊编码

本文记录了一个关于接口调用中遇到的加密验证不一致问题。问题源于请求参数有时会被编码为特殊字符,导致加密结果不同。通过使用URLEncoder.encode()加密和URLDecoder.decode()解密特殊字符,成功解决了这个问题,确保了加密的一致性。
摘要由CSDN通过智能技术生成

前言:
这是我在使用response.sendRedirect(跳转链接+加密后拼接的参数),对方接口是将我传的appid,和时间戳,根据appid获取到相应的密钥,进行加密,比较和我加密的是一致,但是就会出现,有时候加密是一致的,有时候加密是不一致的,排查加密包和jdk版本之后,就看了下发的请求,发现请求拼接的时候有一个%201类似的编译后的编码字符.导致我自己加密的和他加密不一致,这个是因为参数的原因有时候会编译成特殊字符,验证不同过,经过查阅资料得到以下解决代码,记录方便遇到此类问题的小伙伴借鉴.

//加密sign
 URLEncoder.encode(sign);
 //解密sign特殊字符转义
 URLDecoder.decode(sign);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值