最近更新时间: 2026-08-18 11:57:15
时间戳防盗链通过使用约定的加密字符串来对具有访问有效期的资源链接进行一些加密计算得到一个 token 值,然后访问外链里面带上这个 token 和截止时间戳去访问七牛qvs节点,七牛qvs节点会用同样的算法来计算访问链接是否合法,如果不合法则返回403 Forbidden,否则返回所要访问的资源。
操作步骤:

签名参数传递方式: 例如播放地址是: http://qvs-live-hdl.qiniu.com:2045/3k5ndkiqvggnz/stream1.flv
最终形成的播放地址是: http://qvs-live-hdl.qiniu.com:2045/3k5ndkiqvggnz/stream1.flv?token=xxxx&e=xxxx
参考实例: 需要获取一个当前时间5分钟后过期的防盗链签名 url.
播放地址为: http://qvs-live-hdl.qiniu.com:2045/3k5ndkiqvggnz/stream1.flv portal上已经开启了时间戳防盗链, 设置了主密钥key为123 假设当前时间的时间戳为: 1590468504 过期时间是5分钟后, 所以过期时间戳为: 1590468504 + 5 * 60 = 1590468804 换算为16进制: 5ecca0c4 (一定要全小写) 即参数 e=5ecca0c4
中间字符串的生成规则是: S= key + url_base64_encode(path) + t key 是设置时输入的密钥, 这里是 key=123 path 是 URL 中的 path 部分, URL是http://qvs-live-hdl.qiniu.com:2045/3k5ndkiqvggnz/stream1.flv, 则 path=/3k5ndkiqvggnz/stream1.flv
所以 S=123LzNrNW5ka2lxdmdnbnovc3RyZWFtMS5mbHY=5ecca0c4
** 注:本文提到的 url_base64_encode 算法,都是base64安全编码,下同**
再用 md5算法 token = md5(S).to_lower() 得到: token=74e0b06fce024b4743bca95bd62b2fe0 e=1590468804 所以最终生成的5分钟后过期的播放地址是: http://qvs-live-hdl.qiniu.com:2045/3k5ndkiqvggnz/stream1.flv?token=74e0b06fce024b4743bca95bd62b2fe0&e=1590468804
为了方便用户可以快速的接入测试,视频监控portal中提供了地址生成器,可以快速生成带时间戳的防盗链的推拉流地址。
说明: 需要保证的选择的域名已经开启了时间防盗链功能,否则生成的地址为不带时间防盗链的地址。

这篇文档有帮助吗?
正在加载反馈服务…