Laravel框架实现点播上传阿里云功能

2022-04-14 19:45:39

1、确认框架中安装了第三方alibabacoud控件

实现代码如下

上传过程中遇到任务问题,可以进行留言

<?php namespace AppApixxxxControllers;use DB;use IlluminateHttpRequeess), true);        $uploadAuth = json_decode(base64_decode($createRes->body->uploadAuth), true);         // 使用UploadAuth和UploadAddress初始化OSS客户端        $ossClient = $this->init_oss_client($uploadAuth, $uploadAddress);        $localFile = $fileName;   // 需要上传到VOD的本地视频文件的完整路径  改这个有效果                // 上传文件,注意是同步上传会阻塞等待,耗时与文件大小和网络上行带宽有关        $result = $this->upload_local_file($ossClient, $uploadAddress, $localFile);        //$result = multipart_upload_file($ossClient, $uploadAddress, $localFile);        $arr = $this->playinfo($videoId,$formats);        $data = Utils::toArray(Tea::merge($arr->body));        $brr = array();        $brr['VideoId'] = $data['VideoBase']['VideoId'];//视频id        $brr['PlayURL'] = $data['PlayInfoList']['PlayInfo'][0]['PlayURL'];//返回的播放地址        return $brr;    }     public function init_oss_client($uploadAuth, $uploadAddress)    {        $ossClient = new OssClient($uploadAuth['AccessKeyId'], $uploadAuth['AccessKeySecret'], $uploadAddress['Endpoint'],            false, $uploadAuth['SecurityToken']);        $ossClient->setTimeout(86400*7);    // 设置请求超时时间,单位秒,默认是5184000秒, 建议不要设置太小,如果上传文件很大,消耗的时间会比较长        $ossClient->setConnectTimeout(10);  // 设置连接超时时间,单位秒,默认是10秒        return $ossClient;    }}

相关文章 大家在看