業務場景
線上教育場景下,提供視訊課程給使用者試看一段時間(如前5分鐘),使用者試看完後如果要繼續觀看,需要付費購買。
業務流程

- 用戶端到應用背景請求試看位址
- 應用背景請求阿裡雲點播服務,擷取視訊試看位址
- 阿裡雲點播服務傳回試看位址
- 應用背景傳回試看位址給用戶端播放
- 用戶端通過試看位址播放
使用步驟
-
點播域名開啟試看功能
登陸點播控制台,配置管理-分發加速配置-域名管理-配置(對應域名處)-通路控制-URL鑒權中,開啟A方式鑒權,同時,勾選”支援試看”選項。
-
試看位址擷取
調用
擷取播放位址接口 ,通過參數 PlayConfig 結構中的 PreviewTime 來擷取指定時長的播放試看位址。示例代碼:
from aliyunsdkvod.request.v20170321 import GetPlayInfoRequest
from aliyunsdkcore import client
access_key_id = "your access_key_id"
access_key_secret = "your access_key_secret"
region = "cn-shanghai"
videoId = "your videoId"
def GetPreviewURL(clt):
request = GetPlayInfoRequest.GetPlayInfoRequest()
request.set_VideoId(videoId)
#設定set_PlayConfig參數指定試看時長為15秒
request.set_PlayConfig('{"PreviewTime":"15"}')
request.set_accept_format('JSON')
response = clt.do_action(request)
return response
clt = client.AcsClient(access_key_id, access_key_secret, region)
print GetPreviewURL(clt)
-
使用擷取到的試看位址播放
擷取到的播放位址格式(最後end=15參數說明是15s試看):
https://vod.aliyunvod.cn/8f026a6b21004454bc1524f3bfa71015/6c2bed8cd51e4e02b261d00a19ce76e4-3c166f6cad28fc09ff0ddada54f4ab08-fd.mp4?auth_key=1575626158-f644bdd753434db08813410fa04e4492-0-d7976721890fc12348ea4cabfb70b815&end=15 -
播放效果
實際播放可以看到視訊隻有15秒
注意事項
試看的基本原理是,播放的CDN加速位址帶有試看的指定時長資訊,雲端會對該資訊進行鑒權,鑒權通過會傳回指定的檔案内容,否則拒絕通路、傳回403。
- 點播試看功能基于阿裡雲CDN加速實作,且必須在視訊點播(VOD)控制台配置CDN加速域名。
- 此方案必須開啟A鑒權,同時,為了防止試看參數被篡改,試看參數也作為auth_key計算的一部分。
- 域名必須開啟 range回源 和 拖拽播放。具體可在域名管理-配置(對應域名處)-視訊相關處開啟。