问题描述
如果这样的话,那岂不MD5签名会出现误判的情况呀?明明签名对了,但是因为客户端和服务器的编码格式不一样,判为错误
解决方案
指定统一的编码,而不是使用系统默认编码。计算一个字符串MD5时,会先得到该字符串的byte数组,如果不手动指定编码会调用String->getBytes(),该方法的API说明如下:Encodes this {@code String} into a sequence of bytes using the platform's default charset, storing the result into a new byte array.所以,要调用String->getBytes(Charset charset)方法,通过指定统一的编码格式,就没有问题了。
时间: 2024-10-11 03:44:55