播放器的授權播放
更新時間:2024-12-16 19:20:19
使用場景
學員登入網站頁面後進入影片直播播放頁面,播放器透過攜帶學員資訊請求授權驗證URL,介面判斷該學員是否能播放當前影片。若不允許播放,則播放器提示相關錯誤資訊,不能播放。用於學員播放權限驗證。
後台設定
設定方式一:單個頻道設定授權認證URL
頻道設定 --> 播放器管理 --> 播放限制 --> 授權驗證URL

設定方式二:通用設定授權認證URL,帳號下所有頻道開啟應用預設設定生效
通用設定 --> 播放限制 --> 授權驗證URL

參數說明
播放器請求授權認證URL參數說明:
| 參數名稱 | 參數說明 |
|---|---|
| vid | 頻道ID |
| code | flashvars中自訂參數,預設空 |
| t | 時間戳 |
| v | 亂數去快取,行動端中請求介面該欄位為_ |
| callback | callback回呼,行動端中請求介面使用jsonp方式 |
var player = polyvObject(".player").livePlayer({
width: '100%',
height: '100%',
uid: 'e3wx706i3v',
vid: '101043',
flashvars: {
code: 'polyv'
}
});
請求介面範例:
http://www.mywebsite.com/pmd.php?vid=101043&code=polyv&t=1555569549636&v=867
授權認證URL介面回呼參數說明
| 參數名稱 | 取值範圍 | 參數說明 |
|---|---|---|
| status | Number | 是否允許播放, 1 正常播放 2 禁止播放 |
| username | String | 跑馬燈展示內容,可為"" |
| sign | String | 授權驗證sign |
| show | String | 是否顯示跑馬燈 on 顯示 off 隱藏 |
| message | String | 自訂錯誤資訊,非必填 |
sign值MD5計算規則: 將vid(vid為頻道ID),username,code,status,s(s為上文show的簡寫),t(t為播放器請求授權URL的時間戳參數)做MD5
let sign = MD5(`vid=${vid}&username=${username}&code=${code}&status=${status}&s=${show}&t=${t}`);
PHP範例程式碼
<?php
$status = 1;
$username = "test";
$show= "on";
$vid = $_GET["vid"];
$code = $_GET["code"];
$time = $_GET["t"];
//客户网站后台对学员身份做判断,若授权不通过不允许播放器去播视频,可以自定义提示信息,将提示信息传给POLYV播放器,让播放器显示出来
$message="该学员不是付费会员,请购买套餐后再刷新页面播放";
$md5=md5("vid=".$vid."&username=".$username."&code=".$code."&status=".$status."&s=".$show."&t=".$time);
$callback = isset($_GET["callback"])?$_GET["callback"]:null; //未提交callback时则设为空
$array = Array("status"=>$status,"username"=>$username,"show"=>$show,"sign"=>$md5,"message"=>$message);
$validateJson = json_encode($array);
if($callback != null){
echo $callback."(".$validateJson.")";
} else{
echo $validateJson;
}
?>
※註:為了更方便的使用跑馬燈功能,現已將直播跑馬燈功能單獨移出,具體請點擊 影片跑馬燈–新的防錄影神器進行設定,目前授權認證介面仍需要提交相關操作,為空的參數也要提交。
注意事項
- 儲存Json位址的網域名稱下必需增加crossdomain.xml檔案
crossdomain.xml:
範例
範例位址:http://demo.ipolyv.cn/chenwb/test30/login.php
範例程式碼下載:zbsqrz
