短信请求权鉴若短信需要鉴权,请在配置第三方短信接口时开启权鉴并填写密钥,参见新建第三方短信平台接口。

QuickAudience会根据用户填写的密钥与URL请求参数timestamp和nonce进行HmacSHA256Hex签名并生成signature,并将此signature通过Request Header传递。您的服务接收到请求后,同样根据URL参数与webhook通道配置的密钥进行HmacSHA256Hex算法加密。如果计算的值与从Request Header中传过来的signature相同,则可以确定是此请求是从QuickAudience发出的,鉴权成功。

参数

含义

示例

key

webhook配置的密钥

123456789

签名算法示例:

public String makeSignature(String key, String timestamp, String nonce) {

String str = generateStr(key, timestamp, nonce);

return HmacUtils.hmacSha256Hex(key, str.replaceAll("\\s+", ""));

}

/**

* 签名待处理的字符串拼接

*/

public static String generateStr(String key, String timestamp, String nonce){

String[] array = new String[] { key, timestamp, nonce};

StringBuffer sb = new StringBuffer();

// 字符串排序

Arrays.sort(array);

for (int i = 0; i < 3; i++) {

sb.append(array[i]);

}

return sb.toString();

}