在vimeo上进行REST Api通话-数秒即可播放视频

时间:2019-04-25 05:59:49

标签: javascript angular typescript vimeo-api

我在Angular项目中使用 vimeo / player API ,我通过

安装了它
npm i @vimeo/player.

这是用于私人播放视频(仅在我的网站上),我将网址嵌入到iframe中,可以正常播放。 我已经编写了用于获取事件(暂停和结束)从播放器及其工作中触发的代码。

我想做的是将API调用放入事件(暂停)发生函数内,以使视频播放几秒钟并存储在数据库中。并且一旦用户暂停了视频并关闭了浏览器,过了一段时间,用户再次进入网站,视频将从用户上次暂停的位置开始播放(获取保存在db中的持续时间,并在该持续时间之后继续播放)(如youtube)。

import Player from '@vimeo/player';

export class CoursesComponent implements OnInit, AfterViewInit {

@ViewChildren('vidPlayer') vidPlayer;

ngAfterViewInit() {

let player

console.log(this.vidPlayer.length);

player = new Player(this.vidPlayer.first.nativeElement);

player.on('pause', function (paused) {

     console.log('pause', paused);
     //--paused.seconds, the no. of seconds played
     let duration = { duration: paused.seconds, status: false };
     //--the datas are static 
    this.courseService.updateLastPlayed('coursename', 'sec3', 'ch9', duration).subscribe((result) => {     
    console.log("LastPlayed chapter updated");
    }, (err) => {
      console.log(err);
    });
  });

}}

1 个答案:

答案 0 :(得分:0)

我在ReactJS项目中使用React Player
此第3个库支持onProgress回调,该回调返回 playedSeconds