如何获得接口校验token视频校验streamToken及配置token有效期
1、前言
先前的文章介绍了,一步一步搭建RTMP推流直播流媒体服务, OBS如何配置推流到RTMP流媒体服务直播视频文件直播桌面操作让微信手机端电脑浏览器无插件直播观看,这篇文章介绍LiveQing的相关token获取与携带。
2、获取校验token
调用登录接口获取: https://cloud.liveqing.com:1443/apidoc/#api-01auth-PostApiV1Login,这里注意 password 时需要md5加密下的。
2.1、接口校验权限
取接口返回的 token 或 sid,选择其中一种方式即可,如果只需要token ,调用登录接口时携带上 onlytoken=true 的入参。
2.1.1、sid
会话ID,调用其它接口时, Request Headers 设置 Cookie, 如 Cookie:sid=NCLv1JtZg;
2.1.2、token
开启接口鉴权后 未登录时 访问其它接口,携带token值传递, 如 http://localhost:10080/api/v1/live/list?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1NjkzMTkyOTUsInB3IjoiMjEyMzJmMjk3YTU3YTVhNzQzODk0YTBlNGE4MDFmYzMiLCJ0bSI6MTU2OTIzMjg5NSwidW4iOiJhZG1pbiJ9.2SSM7-XJXks5S31K3YgtqOum9mSuQW1nglgkiwz1LN0
同样,也可以在系统配置里关闭接口鉴权,这样就无需携带token校验。
2.2、视频流校验鉴权
注意流地址后携带的 参数名仍然是 token , 参数值是 streamToken
如果在系统配置里,开启路登录资源鉴权,那边播放视频流的时候,也需要携带校验字符串。这里同样是调用登录接口,获取 streamToken 的值
系统管理->系统配置->安全配置 开启资源登录鉴权后,播放视频流资源 或 回看播放时候 携带的token 如:http://localhost:10080/flv/hls/test-002.flv?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE1OTg2MDUxNTcsInB3IjoiMjEyMzJmMjk3YTU3YTVhNzQzODk0YTBlNGE4MDFmYzMiLCJ0bSI6MTU5ODYwNDg1NywidW4iOiJhZG1pbiJ9.Sx_eTWN4ynLzFCGM6AJ-s6XQF-3QrBV36zlB5MT39eI
3、关于接口校验token
配置 liveqing.ini 后,需重启下服务
3.1、token有效期
livqing.ini -> [sys] -> sys_token_timeout=86400
[sys]
; 接口调用token或sid 有效时间 单位(秒)
sys_token_timeout = 86400
3.2、配置token始终有效
下面的 自定义字符串 替换为任意字符串,用于生成加密的token;默认 sys_token_key 的值是空的,如果不自定义,每次服务启动时候都会生成随机加密key,先前的 token都会失效;
[sys]
; 接口调用token或sid 有效时间 单位(秒)
sys_token_timeout = 8640000000
; token加密key, 配置自定义字符串,不配置系统启动自动随机
sys_token_key = 自定义字符串
4、关于视频流校验streamToken
配置 liveqing.ini 后,需重启下服务
4.1、streamToken有效期
livqing.ini -> [sys] -> sys_stream_token_timeout=86400
[sys]
; 视频流校验 streamToken ,不配置时和 sys_token_timeout 的值保持一致
sys_stream_token_timeout = 86400
4.2、配置streamToken始终有效
下面的 自定义字符串 替换为任意字符串,用于生成加密的streamToken;默认 sys_stream_token_key 的值是空的,如果不自定义,每次服务启动时候都会生成随机加密key,先前的 streamToken 都会失效;
[sys]
; 视频流校验 streamToken ,不配置时和 sys_token_timeout 的值保持一致
sys_stream_token_timeout = 8640000000
;streamToken加密key, 配置自定义字符串,不配置系统启动自动随机
sys_stream_token_key= 自定义字符串