七牛通过Java获取直播在线观看人数

阅读: 评论:0

七牛通过Java获取直播在线观看人数

七牛通过Java获取直播在线观看人数

最近在使用七牛的直播服务,使用了一段时间,感觉还行,价格挺便宜的没有想象的那么贵。服务端的SDK也封装很好,使用起来很简单。但是在使用SpringBoot开发过程中还是遇到了一些坑,以后通过笔记将遇到的坑记录下来。


第一个坑:如何通过Java获取正在观看直播的人数?

七牛官方给出了不同版本获取在线人数的方式,有Go版本,PHP版本、shell版本和python版本的获取,详细代码请到官方链接。很奇怪,为啥就是没有Java版本的?使用Java开发的人应该不少才对(后面还是转Go开发服务段时间了,Java还是太重),不管这些,反正有Go版本和PHP版本对照写一下就行不难,代码如下:

    public static String doQiNiuGet(String hub){//  url = "/"+ hub +"/stat/play";System.out.println(url);// header是七牛管理凭证中的signingStrString header = "GET /v2/hubs/"+hub+"/stat/play"+"nHost: pili.qiniuapi" +"nContent-Type: application/json" +"nn";System.out.println(header);//hmacSha1加密需要引入commons-codec(1.10版本)// sign secret keybyte[] sign = HmacUtils.hmacSha1("secret key",header);//base64加密,用七牛直播SDK中给的base64就行String encodedSign = deToString(sign,0).replace('+','-').replace('/','_');System.out.println("Authorization: Qiniu rdEVMXWqVolcg58jL98fMDWTGw8rU2nVpjBLJVzS:"+encodedSign);HttpHeaders httpHeaders = new HttpHeaders();httpHeaders.add("Content-Type", "application/json");httpHeaders.add("Host","pili.qiniuapi");// Authorization: Qiniu access key:+sign,//注意:base64 加密后字符超过76个以后会在最后加/n,要去除这个/nString authorization = ("Qiniu access key:" + encodedSign).replaceAll("n","");httpHeaders.add("Authorization",authorization);System.out.println(httpHeaders);//使用RestTemplate放出get请求RestTemplate restTemplate = new RestTemplate();HttpEntity<String> requestEntity = new HttpEntity<String>(null, httpHeaders);ResponseEntity<String> results = hange(url,HttpMethod.GET, requestEntity, String.class);String responseBody = Body();System.out.println("get body:" + String());return responseBody;}

代码中唯一需要注意的是base64加密,当加密后的字符大于76个字符时会自动在后面加上换行符,需要除去这个换行符,这个问题我找了一个多小时。如果不去除这个换行符,则会报如下错误:

java.lang.IllegalArgumentException: Illegal character(s) in message header value: Qiniu access key:pnvO1w1xuNrGBgAJ8RcgjthaXxk=

本文发布于:2024-02-03 06:58:23,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170691470349383.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:在线观看   人数   Java
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23