小程序
小游戏
企业微信
微信支付
扫描小程序码分享
在将小程序发布为体验版后,就报错了。
之前一直测试都没有问题,提交到微信官网审核就出现这个问题,求大神帮忙解决。
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
byte[] ivByte = Base64.getDecoder().decode(iv); 点到decode里面看,这边使用的是ISO_8859_1 public byte[] decode(String src) { return decode(src.getBytes(StandardCharsets.ISO_8859_1)); } 解码之后不要用utf-8转换,直接使用byte[]类型 IvParameterSpec ipv = new IvParameterSpec(ivByte); cipher.init(Cipher.DECRYPT_MODE,keySpec,ipv); 所以其实是没有注意到编码格式的问题
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
遇到了同样的问题,弄了一下午,解决了。
原因是,在三个数据作为参数传输的过程中,内容中的 +会被替换为 空格。
所以需要对参数转码,转码后发现特殊字符被替换为%3D,再给换回来即可。!
URLEncoder.encode(encryptData,"UTF-8").replace("%3D","=").replace("%2F","/")
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
byte[] ivByte = Base64.getDecoder().decode(iv); 点到decode里面看,这边使用的是ISO_8859_1 public byte[] decode(String src) { return decode(src.getBytes(StandardCharsets.ISO_8859_1)); } 解码之后不要用utf-8转换,直接使用byte[]类型 IvParameterSpec ipv = new IvParameterSpec(ivByte); cipher.init(Cipher.DECRYPT_MODE,keySpec,ipv); 所以其实是没有注意到编码格式的问题
遇到了同样的问题,弄了一下午,解决了。
原因是,在三个数据作为参数传输的过程中,内容中的 +会被替换为 空格。
所以需要对参数转码,转码后发现特殊字符被替换为%3D,再给换回来即可。!
URLEncoder.encode(encryptData,"UTF-8").replace("%3D","=").replace("%2F","/")