保利威视频播放
首先上线播放视频容易出的问题就是下载,以及盗录的问题,保利威视提供的API能够帮助我们解决这个问题~
解决下载的问题就是通过加密视频的形式,解决盗录是通过跑马灯的形式来实现的,那么我们来看下文档~到底要怎么做
注册账号,上传视频等
注册一个保利威的账号得到user_id以及secretKey
网站上还有上传以及视频设置等功能~~
加密以及跑马灯功能的实现
注意: 一定要仔细阅读文档~~特别是下面PHP代码的例子~~类比着实现~~
个人认为保利威文档写的不太清晰~一定要细心~~~~
播放加密视频的流程
1--播放加密视频需要在保利威视频播放器里加一个playsafe的参数
2--playsafe参数的值是token 也可以是一个function 这个function有两个参数
一个是vid 一个是next 这个next方法必须被执行~ next(token) 而且要把token当做参数
3-- 那这个token到底是什么呢?
这个token需要我们像保利威的接口发POST请求获取~
接口地址是 https://hls.videocc.net/service/v1/token ~文档中有~
发送POST请求带的参数是文档要求的~
如果携带的参数对~这个接口会给我们返回验证通过的token~
我们把token放入播放器的playsafe就可以播放了~~
播放跑马灯视频
播放跑马灯视频要求先必须用新的播放器~也就是引入新的js~
还有要在视频设置里配置一个回调的url~~
1--使用新的播放器去播放视频的时候,如果视频是授权跑马灯的,
保利威会默认向你提供的回调接口发送GET请求~
2-- GET请求会携带一些参数,需要我们这个接口返回文档要求的信息~~
3-- 按照文档的实例来编写接口~成功后就可以播放视频~并且携带跑马灯~
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Title</title> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script src='https://player.polyv.net/script/polyvplayer.min.js'></script> <script src="https://cdn.bootcss.com/axios/0.19.0-beta.1/axios.js"></script> </head> <body> <div id="player"></div> <script> var player = polyvObject('#player').videoPlayer({ wrap: '#player', width: 800, height: 533, forceH5:true , vid: '03b56854c0e149a81c1d6258be4d64c2_0', // vid: '03b56854c063c2132bd7de277de36e74_0', code: 'myRandomCodeValue', // 向后端发送请求获取加密的token playsafe: function (vid, next) { console.log(vid); axios.request({ url: "http://127.0.0.1:8002/api/course/polyv", method: "POST", data: { vid: vid } }).then(function (data) { console.log(data) next(data.data) }) } }); </script> </body> </html>
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
import json import time import requests import hashlib from django.conf import settings class PolyvVideo(object): USER_ID = settings.VIDEO_CONFIG["POLYV"]["USER_ID"] SECRET_KEY = settings.VIDEO_CONFIG["POLYV"]["SECRET_KEY"