You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.0 KiB
44 lines
1.0 KiB
package com.fr.plugin.bsSSO.utils; |
|
|
|
import com.actionsoft.bpms.api.common.ApiUtils; |
|
|
|
import java.util.Collection; |
|
import java.util.Collections; |
|
import java.util.HashMap; |
|
import java.util.Map; |
|
|
|
public class OpenapiUtil { |
|
|
|
/** |
|
* 生成签名 |
|
* @param queryStr |
|
* @param secret |
|
* @return |
|
*/ |
|
public static String generateSign(String queryStr,String secret){ |
|
Map<String, String> param = getParam(queryStr); |
|
|
|
return ApiUtils.makeSig(param, secret, (Collection)Collections.EMPTY_LIST); |
|
} |
|
|
|
private static Map<String, String> getParam(String url){ |
|
Map<String, String> param = new HashMap<String, String>(); |
|
|
|
String[] oneSplit = url.split("&"); |
|
|
|
for(int i = 0;i<oneSplit.length;i++){ |
|
String[] kv = oneSplit[i].split("="); |
|
String k = kv[0]; |
|
|
|
if(k.equals("sig")){ |
|
continue; |
|
} |
|
|
|
String val = kv.length == 1 ? "" :kv[1]; |
|
|
|
param.put(kv[0],val); |
|
} |
|
|
|
return param; |
|
} |
|
}
|
|
|