日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

JAVA 對接騰訊云直播的實現(xiàn)

瀏覽:28日期:2022-08-31 09:33:16

簽名授權(quán)

public static T TecentDoPostJsonV3(String url,String key,String secretId, TecentPublicParams header, String json, OkHttpClient httpClient, Class clazz) throws Exception { // ************* 步驟 1:拼接規(guī)范請求串 ************* String date = DateUtils.format(new Date(Long.valueOf(header.getX_TC_Timestamp() + '000')),DateUtils.FORMAT_SHORT); String service = url.substring(0,url.indexOf('.')); //截取服務(wù)類型 云直播是live System.out.println(json); String canonicalRequest ='POSTn' + '/n' + 'n' + 'content-type:application/json; charset=utf-8n' + 'host:'+url+'n' + 'n' + 'content-type;hostn' + sha256Hex(json); System.out.println(canonicalRequest); // ************* 步驟 2:拼接待簽名字符串 ************* String credentialScope = date+ '/' + service + '/' + 'tc3_request'; String hashedCanonicalRequest = sha256Hex(canonicalRequest); String algorithm = 'TC3-HMAC-SHA256'; String stringToSign = algorithm + 'n' + header.getX_TC_Timestamp() + 'n' + credentialScope + 'n' + hashedCanonicalRequest; System.out.println(stringToSign); // ************* 步驟 3:計算簽名 ************* byte[] secretDate = hmac256(('TC3' + key).getBytes(CHARSET), date); byte[] secretService = hmac256(secretDate, service); byte[] secretSigning = hmac256(secretService, 'tc3_request'); String signature = DatatypeConverter.printHexBinary(hmac256(secretSigning, stringToSign)).toLowerCase(); System.out.println(signature); // ************* 步驟 4:拼接 Authorization ************* String authorization = algorithm + ' ' + 'Credential=' + secretId + '/' + credentialScope + ', ' + 'SignedHeaders=' + 'content-type;host' + ', ' + 'Signature=' + signature; System.out.println(authorization); header.setAuthorization(authorization); JSONObject jsonObject = (JSONObject)JSON.toJSON(header); RequestBody requestBody = RequestBody.create(CONTENT_TYPE, json); Request.Builder builder = new Request.Builder(); for (Map.Entry entry:jsonObject.entrySet()) { if(entry.getValue()==null){ continue; } builder.addHeader(String.valueOf(entry.getKey()).replaceAll('_','-'),String.valueOf(entry.getValue())); } // 用okhttp3 拼接發(fā)送請求 try { Response response = httpClient.newCall((builder).url('https://'+url).post(requestBody).build()).execute(); String request = response.body().string(); T t = JSON.parseObject(request, clazz); return t; } catch (IOException var8) { throw new ApiProcessException(ErrorCode.HTTP_REQUEST_ERROR, var8.getMessage()); }}public static byte[] hmac256(byte[] key, String msg) throws Exception { Mac mac = Mac.getInstance('HmacSHA256'); SecretKeySpec secretKeySpec = new SecretKeySpec(key, mac.getAlgorithm()); mac.init(secretKeySpec); return mac.doFinal(msg.getBytes(CHARSET));}

公共參數(shù)實體類

public class TecentPublicParams { private String X_TC_Action; private String X_TC_Region; private String X_TC_Timestamp = Long.toString(System.currentTimeMillis() / 1000); private String X_TC_Version; private String Authorization; private String X_TC_Language = 'zh-CN'; private String X_TC_Token; public String getX_TC_Action() { return X_TC_Action; } public void setX_TC_Action(String x_TC_Action) { X_TC_Action = x_TC_Action; } public String getX_TC_Region() { return X_TC_Region; } public void setX_TC_Region(String x_TC_Region) { X_TC_Region = x_TC_Region; } public String getX_TC_Timestamp() { return X_TC_Timestamp; } public void setX_TC_Timestamp(String x_TC_Timestamp) { X_TC_Timestamp = x_TC_Timestamp; } public String getX_TC_Version() { return X_TC_Version; } public void setX_TC_Version(String x_TC_Version) { X_TC_Version = x_TC_Version; } public String getAuthorization() { return Authorization; } public void setAuthorization(String authorization) { Authorization = authorization; } public String getX_TC_Language() { return X_TC_Language; } public void setX_TC_Language(String x_TC_Language) { X_TC_Language = x_TC_Language; } public String getX_TC_Token() { return X_TC_Token; } public void setX_TC_Token(String x_TC_Token) { X_TC_Token = x_TC_Token; }}

調(diào)用方法

String tencentLiveApi = 'live.tencentcloudapi.com';String SECRET_KEY = '***'; //此處填寫自己騰訊云keyString SECRET_ID = '***'; //此處填寫自己騰訊云密匙TecentPublicParams tecentPublicParams = new TecentPublicParams();tecentPublicParams.setX_TC_Action('DescribeLiveStreamPublishedList'); //對應(yīng)方法名tecentPublicParams.setX_TC_Version('2018-08-01');TreeMap keyValues = new TreeMap(); //參數(shù)keyValues.put('DomainName','***');keyValues.put('EndTime', DateUtils.format(new Date(),'yyyy-MM-dd’T’HH:mm:ss’Z’'));keyValues.put('StartTime', DateUtils.format(DateUtils.addDay(new Date(),-30),'yyyy-MM-dd’T’HH:mm:ss’Z’'));String back ='';try { back = LiveUtils.TecentDoPostJsonV3(tencentLiveApi,SECRET_KEY,SECRET_ID,tecentPublicParams,JSON.toJSONString(keyValues),httpClient,String.class);} catch (Exception e) { e.printStackTrace();}

到此這篇關(guān)于JAVA 對接騰訊云直播的實現(xiàn)的文章就介紹到這了,更多相關(guān)JAVA 騰訊云直播內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久精品一区二区不卡| 亚洲无线一线二线三线区别av| 在线精品一区二区| 国产精品久久久久久久久久10秀| 中文欧美日韩| 91精品xxx在线观看| 久久99高清| 国产毛片久久| 欧美激情另类| 国产情侣久久| 国产精品丝袜xxxxxxx| 国产一区二区久久久久| 欧美精品中文| 欧美在线网站| 欧美成人亚洲| 亚洲韩日在线| 蜜桃视频在线网站| 四虎成人av| 欧美经典一区| 美女高潮久久久| 蜜桃久久久久| 免费在线亚洲欧美| 日韩和欧美一区二区三区| 久久国产成人午夜av影院宅| 香蕉成人av| 91欧美在线| 成人va天堂| 美女少妇全过程你懂的久久| 九一国产精品| 只有精品亚洲| 日韩avvvv在线播放| 日本99精品| 国产精品三p一区二区| 欧美激情91| 人人香蕉久久| 欧美/亚洲一区| 99国产精品自拍| 亚洲免费网址| 亚洲精品黄色| 国产精东传媒成人av电影| 麻豆视频一区二区| 国内亚洲精品| 日韩高清国产一区在线| 久久免费大视频| 亚洲三级av| 麻豆国产欧美一区二区三区 | 综合视频一区| 日韩在线一二三区| 国产精品久久久久久久久免费高清| 麻豆极品一区二区三区| 影音先锋国产精品| 国产精品日韩精品在线播放 | 国产亚洲第一伦理第一区| 国产精品日本一区二区不卡视频| 欧美极品中文字幕| 国产精品日韩久久久| 久久精品一本| 99热免费精品| 精品日产乱码久久久久久仙踪林| 激情视频一区二区三区| 一本一道久久a久久| 午夜影院一区| 欧美日韩在线精品一区二区三区激情综合| 精品一区av| 欧美专区18| 欧美~级网站不卡| 国产成人免费| 国产精品一区二区三区四区在线观看 | 欧美日一区二区三区在线观看国产免| 老色鬼精品视频在线观看播放| 亚洲成人免费| 国产一区福利| 亚洲午夜免费| 欧美久久精品一级c片| 久久精品国产网站| 欧美一级全黄| 国产日韩一区二区三区在线 | 五月婷婷六月综合| 成人在线观看免费视频| 欧美日韩午夜| 日韩毛片网站| 日韩福利视频导航| 亚洲免费福利一区| 婷婷色综合网| 国产综合色产| 国产三级一区| 国产美女精品视频免费播放软件| 日韩精品成人在线观看| 日韩av一区二区在线影视| 国产视频久久| 日韩在线观看一区二区| 免费观看在线色综合| 日本不卡视频一二三区| 午夜性色一区二区三区免费视频| 深夜福利一区| 国产欧美激情| 国产精品久久久一区二区| 国产精品日韩精品在线播放| 亚洲欧美日本国产专区一区| 欧美日韩第一| 国产亚洲亚洲| 欧美偷窥清纯综合图区| 欧美经典一区| 视频福利一区| 欧美专区18| 国产精选一区| 国产精品日韩久久久| 精品一区二区三区免费看| 亚洲高清毛片| 中文字幕一区二区三区四区久久| 国产精品一区二区三区四区在线观看| 岛国av免费在线观看| 日韩一区精品| 国产精品一区二区三区美女 | 日韩精品免费视频一区二区三区 | 国产在线观看91一区二区三区| 麻豆久久久久久| 亚洲欧美日韩国产一区二区| 日韩国产91| 免费av一区| 欧美亚洲人成在线| 国产精品亚洲欧美日韩一区在线 | 日韩成人av影视| 久久久久久美女精品| 久久不见久久见国语| 久久国产精品毛片| 91精品国产自产精品男人的天堂 | 亚洲精品人人| 精品亚洲自拍| 中文字幕成人| 亚洲天堂免费| 精品91久久久久| 国产精品试看| 欧美日韩国产高清| 国产成人精品亚洲线观看| 国产精品va视频| 国产精品一区毛片| 久久精品女人| 成人av三级| 人人精品亚洲| 在线日韩一区| 亚洲欧美日韩精品一区二区| 日韩视频在线一区二区三区| 久久要要av| 亚洲欧美专区| 精品国产91| av成人国产| 久久国产三级| 成人在线免费观看91| 欧美综合另类| 亚久久调教视频| 精品一区91| 国产一区欧美| 视频一区二区不卡| 麻豆视频一区二区| 欧美日韩国产一区精品一区| 天堂va在线高清一区| 国产另类在线| 久久影院一区| 亚洲欧美在线专区| 国产一区不卡| 日本欧美在线看| 麻豆一区二区三| 国产午夜久久| 国产成人精品一区二区三区在线| 国产亚洲精品v| 大香伊人久久精品一区二区| 影音先锋久久精品| 卡一卡二国产精品| 好吊视频一区二区三区四区| 日韩高清电影免费| 欧美三级网址| 国产色99精品9i| 久久视频一区| 日韩 欧美一区二区三区| 福利片在线一区二区| 亚洲欧美日韩在线观看a三区| 精品无人区麻豆乱码久久久 | 亚洲bt欧美bt精品777| 久久久亚洲欧洲日产| 午夜在线视频一区二区区别| 麻豆视频在线观看免费网站黄 | 国产精品毛片久久久| 亚洲国内欧美| 岛国av免费在线观看| 日本不卡视频一二三区| 亚洲欧洲一区二区天堂久久| 国产精品久久久久久久免费观看| 四虎成人精品一区二区免费网站| 不卡中文一二三区| 亚洲精品国产嫩草在线观看| 精品国产精品久久一区免费式| 国产日本精品| 日韩成人一级| 日韩精品五月天| 免费观看在线综合色| 久久午夜影视| 免费人成精品欧美精品| 免费看欧美美女黄的网站| 亚洲永久精品唐人导航网址|