/**
* 支付相关生成签名
* @param params
* @return
* @throws UnsupportedEncodingException
*/
public String getSignature(Map<String, String> params) throws UnsupportedEncodingException {
List<String> paramNames = new ArrayList<String>();
for (String key : params.keySet()) {
paramNames.add(key);
}
String[] _params = paramNames.toArray(new String[paramNames.size()]);
Arrays.sort(_params);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < _params.length; i++) {
sb.append("&" + _params[i] + "=" + params.get(_params[i]));
}
String temp1 = sb.toString().replaceFirst("&", "") + "&key=" + Common.WX_DEFRAYAL_KEY;//微信商户平台自己配置的key
String md5=MD5Util.MD5(new String(temp1.getBytes("utf-8"))).toUpperCase();//进行设置utf-8编码可以防止因为中文编码不同导致的签名错误
return md5;
}
微信支付生成签名
最新推荐文章于 2024-05-12 23:57:34 发布