在线教育场景下的点播试看功能实现

简介: 在线教育场景下,使用阿里云视频点播服务实现视频试看功能。

业务场景

在线教育场景下,提供视频课程给用户试看一段时间(如前5分钟),用户试看完后如果要继续观看,需要付费购买。

业务流程

|center|500x400

  1. 客户端到应用后台请求试看地址
  2. 应用后台请求阿里云点播服务,获取视频试看地址
  3. 阿里云点播服务返回试看地址
  4. 应用后台返回试看地址给客户端播放
  5. 客户端通过试看地址播放

使用步骤

  • 点播域名开启试看功能
    登陆点播控制台,配置管理-分发加速配置-域名管理-配置(对应域名处)-访问控制-URL鉴权中,开启A方式鉴权,同时,勾选”支持试看”选项。

|center|500x400

  • 试看地址获取
    调用 获取播放地址接口 ,通过参数 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)

​​|center|500x400

注意事项

试看的基本原理是,播放的CDN加速地址带有试看的指定时长信息,云端会对该信息进行鉴权,鉴权通过会返回指定的文件内容,否则拒绝访问、返回403。

  1. 点播试看功能基于阿里云CDN加速实现,且必须在视频点播(VOD)控制台配置CDN加速域名。
  2. 此方案必须开启A鉴权,同时,为了防止试看参数被篡改,试看参数也作为auth_key计算的一部分。
  3. 域名必须开启 range回源 和 拖拽播放。具体可在域名管理-配置(对应域名处)-视频相关处开启。
目录
相关文章
Layui 内置方法 - layer.closeAll(关闭所有层)
Layui 内置方法 - layer.closeAll(关闭所有层)
573 0
Temporary email邮箱API发送邮件的步骤
使用Temporary email API发送邮件可保护隐私。步骤包括:了解API原理,注册获取API密钥,调用API并传入密钥,生成临时邮箱地址,编写邮件内容,然后发送。此方法确保真实邮箱不被泄露,适用于避免垃圾邮件。记得遵守使用规定和法规。
|
数据采集 监控 Oracle
GraalVM 24 正式发布阿里巴巴贡献重要特性 —— 支持 Java Agent 插桩
阿里巴巴是 GraalVM 全球顾问委员会的唯一中国代表,阿里云程序语言与编译器团队和可观测团队合作实现了 GraalVM 应用的无侵入可观测能力,并在 ARMS 平台上线了该功能。目前在 GraalVM 24 中发布的是支持 Java agent 的第一步,其余能力将在 GraalVM 的后续版本中陆续发布。
736 23
|
存储 安全 JavaScript
【XSS】XSS漏洞详细指南
【XSS】XSS漏洞详细指南
805 3
|
11月前
|
Arthas 监控 IDE
Arthas 全攻略:让调试变得简单
Arthas 全攻略:让调试变得简单
517 7
|
人工智能 弹性计算 自然语言处理
体验Comfyui后迷上了GenAI
《触手可及,函数计算玩转 AI 大模型》解决方案通过阿里云函数计算的无服务器架构,详细介绍了从选择模型模板到部署和调用的全过程。描述清晰,涵盖技术架构、部署步骤和示例代码,适合初学者。建议增加更多场景介绍(有时候用户不知道怎么变现)、常见问题解答和视频教程,以进一步提升用户体验。部署过程中未遇异常,函数计算的按需付费和弹性伸缩优势明显,适用于多种业务场景。建议提供更多性能优化、实际案例和安全合规建议。
371 0
|
开发框架 Go 微服务
Golang 语言怎么使用 go-micro 和 gin 开发微服务?
Golang 语言怎么使用 go-micro 和 gin 开发微服务?
860 0
|
文字识别
入职必会-开发环境搭建09-屏幕截图软件-PixPin下载和安装
PixPin是一款功能强大使用简单的截图/贴图工具,帮助你提高效率,包含截图、贴图、长截图、文字识别、标注、GIF动图等功能。
1336 1