使用md5加密后结果是乱码然后导致接口验证失败;
import org.springframework.util.DigestUtils;
byte[] b = DigestUtils.md5Digest("b6db9a8360a6ba30a36608a76f35ffb8".getBytes());
System.out.println(new String(b));
//结果为/ZZM.�K����|=��6
网上搜的解决方案是将加密后的byte数组转换为十六进制的字符串
import org.springframework.util.DigestUtils;
byte[] b = DigestUtils.md5Digest("b6db9a8360a6ba30a36608a76f35ffb8".getBytes());
String result = "";
//对byte数组进行遍历操作
for (int i = 0; i < b.length; i++) {
String tmp = Integer.toHexString(b[i] & 0xFF);
if (tmp.length() == 1) {
result += "0" + tmp;
} else {
result += tmp;
}
}
System.out.println(result);
//结果为2f5a5a4d2ea04befc4e7f47c3da3ac36
成功解决;网上也有在线md5加密的网址可以搜一下验证一下