视频点播

简介: 视频点播

controller

@GetMapping("get-play-auth/{videoId}")
public R getVideoPlayAuth(@PathVariable("videoId") String videoId) throws Exception {
    //获取阿里云存储相关常量
    String accessKeyId = ConstantVodUtils.ACCESS_KEY_ID;
    String accessKeySecret = ConstantVodUtils.ACCESS_KEY_SECRET;
    String regionId = ConstantVodUtils.REGION_ID;
    //初始化
    DefaultAcsClient client = AliyunVodSDKUtils.initVodClient(regionId,accessKeyId, accessKeySecret);
    //请求
    GetVideoPlayAuthRequest request = new GetVideoPlayAuthRequest();
    request.setVideoId(videoId);
    //响应
    GetVideoPlayAuthResponse response = client.getAcsResponse(request);
    //得到播放凭证
    String playAuth = response.getPlayAuth();
    //返回结果
    return R.ok().message("获取凭证成功").data("playAuth", playAuth);
}

前端

<template>
  <body>
    <div id="J_prismPlayer"/>
  </body>
</template>
<script>
import vod from '@/api/vod'
//引入前先安装依赖 npm i aliyun-aliplayer
import Aliplayer from 'aliyun-aliplayer'
export default {
  /**
 * 页面渲染完成时:此时js脚本已加载,Aliplayer已定义,可以使用
 * 如果在created生命周期函数中使用,Aliplayer is not defined错误
 */
  mounted() {
    new Aliplayer({
      id: 'J_prismPlayer',
      vid: this.vid, // 视频id
      playauth: this.playAuth, // 播放凭证
      encryptType: '1', // 如果播放加密视频,则需设置encryptType=1,非加密视频无需设置此项
      width: '100%',
      height: '500px'
    }, function(player) {
      console.log('播放器创建成功')
    })
  },
  layout: 'video', // 应用video布局
  asyncData({ params, error }) {
    return vod.getPlayAuth(params.vid).then(response => {
      // console.log(response.data.data)
      return {
        vid: params.vid,
        playAuth: response.data.data.playAuth
      }
    })
  }
}
</script>

// 以下可选设置cover: 'http://guli.shop/photo/banner/1525939573202.jpg', // 封面qualitySort: 'asc', // 清晰度排序

mediaType: 'video', // 返回音频还是视频autoplay: false, // 自动播放isLive: false, // 直播rePlay: false, // 循环播放preload: true,controlBarVisibility: 'hover', // 控制条的显示方式:鼠标悬停useH5Prism: true, // 播放器类型:html5

 

 

相关文章
|
22天前
|
应用服务中间件 API 开发工具
阿里云视频点播功能
阿里云视频点播功能
15 0
|
7月前
|
API
code: 400, value is mandatory for this action
code: 400, value is mandatory for this action
1085 1
|
22天前
|
缓存 负载均衡 应用服务中间件
Nginx安装与使用: Nginx之编译安装的nginx加入systemctl、Nginx命令
Nginx安装与使用: Nginx之编译安装的nginx加入systemctl、Nginx命令
51 0
|
弹性计算 移动开发 前端开发
ecs使用体验
本人是一名大二在校生,在读大数据科学与大数据技术专业。在校参加全国大学生软 件大赛时作品需要服务器,而阿里云提供云服务器在学校可谓尽人知,而且学校也进行过 一门云计算概论的课程,之前一直使用的是钉钉的内网穿透之HTTP穿透,一次偶然的机 会,经过同学介绍,得知了阿里云学生计划,我就有了自己的14天ECS体验,故事就开 始了,遇到困难——百度、CSDN、GitHub——解决问题,下文便慢慢道来。于是我们小 组就与此飞天加速计划结下了缘分。
ecs使用体验
|
22天前
|
开发工具 对象存储
阿里云OSS文件上传
阿里云OSS文件上传
66 0
|
弹性计算
我的ECS使用体验
我的ECS使用体验
|
5月前
|
Java Maven
(短信服务)java SpringBoot 阿里云短信功能实现发送手机验证码
(短信服务)java SpringBoot 阿里云短信功能实现发送手机验证码
710 0
|
弹性计算 NoSQL Java
我的第一次ECS使用体验
阿里云的服务器学生机助力开发和全生命周期成长,培育新的创新人才
|
8月前
|
存储 编解码 API
阿里云视频点播VoD
阿里云视频点播VoD
437 0
|
弹性计算 监控 负载均衡
ECS使用体验
在阿里云领取了一个服务器,分享一下使用体验