
public String sign1(Map params){ JSONObject header JSONObject.fromObject(params); //获取header元素集合 Iterator headerIt header.keys(); ListString list new ArrayListString(); //把header元素集合迭代 出 paramvalue形式字符串放入list集合中 while (headerIt.hasNext()) { String param headerIt.next().toString(); String value header.getString(param); if(value null){ continue ; }else if(.equals(value.trim())){ continue ; }else if(sign.equals(param.trim())){ continue ; }else{ list.add(paramvalue); } } Collections.sort(list); String paramStr; //迭代list拼装签名sign for(int i0;ilist.size();i){ if(i!list.size()-1){ paramStrlist.get(i); } else{ paramStrlist.get(i); } } String signStr paramStr; return signStr; } //参数 Map header new HashMap(); header.put(b,b); header.put(a,a); //按字典排序 String unsign_params sign1(header); System.out.println(字典排序后参数串为 unsign_params);