需参与鉴权的参数定义:
# 1.sign_key说明:
分贝通颁发的sign_key需要作为参数参与签名,且不参与传递.加密数据包括时间戳timestamp和data数据
sign_key:企业开通后提供的sign_key
timestamp:13位时间戳
data:请求的data业务参数
1
2
3
4
2
3
4
# 2.MD5加密说明:
采用org.apache.commons下DigestUtils.md5Hex(param)加密,
不同的编程语言MD5加密是相同的,调用相对应的编程语言进行数据加密即可
1
2
3
2
3
# 3.签名示例:
java:
import org.apache.commons.codec.digest.DigestUtils;
public static String getSign(String timestamp, String jsonData, String signKey) {
//使用相对应的方法进行字符串拼接,可以调用不同方法生成签名字符串
1.String signStr = MessageFormat.format("timestamp={0}&data={1}&sign_key={2}", timestamp, jsonData, signKey);
2.String signStr = "timestamp="+timestamp+"&data="+jsonData+"&sign_key="+signKey
byte[] bytes;
try {
bytes = signStr.getBytes("utf-8");
} catch (UnsupportedEncodingException e) {
log.error("生成openapi签名出错", e);
throw new FinhubException(MessageCode.EXCEPTION);
}
String sign = DigestUtils.md5Hex(bytes)
return sign;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
← 2.1.接入说明 2.3.消息回调说明 →