public static String creatSign(Map<String, Object> map) {
if (!map.containsKey("time")){
map.put("time", Long.toString(System.currentTimeMillis()/1000));
}
map.put("app_id", ConfigUtil.getSettings("golo.open.appId"));
map.put("develop_id", ConfigUtil.getSettings("golo.open.developId"));
if (!(map instanceof TreeMap)) {
map = new TreeMap<>(map);
}
StringBuffer sb = new StringBuffer();
for(Entry<String,Object> entry : map.entrySet()) {
Object value = entry.getValue();
if(!ObjectUtils.isBlank(value)) {
value = String.valueOf(value).replaceAll("\\s+","");
sb.append(entry.getKey()).append("=").append(value).append("&");
}
}
if(sb.length() > 0) {
sb.deleteCharAt(sb.length() - 1);
}
sb.append(ConfigUtil.getSettings("golo.open.developKey"));
String sign = MD5Encrypt.encrypt(sb.toString()).toLowerCase();
logger.info("======> signString = [" + sb.toString() + "]");
logger.info("======> sign = [" + sign + "]");
return sign;
}app