问题:本地机器运行没问题,再联调服务器上运行就报错,MD5签名不一致
原始代码:
private static String md5Encode(String text, String charset) throws UnsupportedEncodingException, NoSuchAlgorithmException {
text = new String(text.getBytes(), charset);
MessageDigest digest = MessageDigest.getInstance("md5");
byte[] result = digest.digest(text.getBytes());
StringBuilder sb = new StringBuilder();
for (byte b : result) {
int number = b & 0xff;
String hex = Integer.toHexString(number);
if (hex.length() == 1) {
sb.append("0").append(hex);
} else {
sb.append(hex);
}
}
return sb.toString();
}
所有的数据一致,但是怎么执行也不对。后来发现字符集问题,记录一下。