腾讯云怎么生成Signature

腾讯云怎么生成Signature 知道了SecretKey ,用Java怎么生成Signature,有人做过腾讯云上传视频的吗

大哥 官方API里面有的,
刚才我查了一下参照官方API,里面有很多详细解释:https://cloud.tencent.com/document/product/213/15693

Signature的生成采用HmacSHA1算法,需要提供SecretKey和StringToSign两个参数,其中StringToSign是一个字符串,由多个请求参数组成,并且按照ASCII码排序,用&符号连接,如下所示:

StringToSign = "GET&%2F&AccessKeyId%3Dtestid%26Action%3DStartLiveRecord%26channel%3Dtest123%26endTime%3D1535206000%26recordType%3Dhls%26startTime%3D1535205800";

使用Java来生成Signature,可以参考以下代码:

String secretKey = "your secret key";
String stringToSign = "GET&%2F&AccessKeyId%3Dtestid%26Action%3DStartLiveRecord%26channel%3Dtest123%26endTime%3D1535206000%26recordType%3Dhls%26startTime%3D1535205800";

try {
    Mac mac = Mac.getInstance("HmacSHA1");
    SecretKey secret = new SecretKeySpec(secretKey.getBytes("UTF-8"), mac.getAlgorithm());
    mac.init(secret);
    byte[] hash = mac.doFinal(stringToSign.getBytes("UTF-8"));
    String signature = new String(Base64.getEncoder().encode(hash));
    System.out.println("Signature:" + signature);
} catch (Exception e) {
    e.printStackTrace();
}