easyswoole上传视频到阿里云(继承上面easyswoole视频上传大小限制取消代码)

accessKeyId='***'
accessKeySecret='***'
public function testAli(){
        $obj=new AliVod();
        $title='test Ali';
        $videoName='1.mp4';
        $result=$obj->create_upload_video($title,$videoName);
        $uploadAddress=json_decode(base64_decode($result->UploadAddress),true);
        $uploadAuth=json_decode(base64_decode($result->UploadAuth),true);
        $videoFile='/php/easyswoole/webroot/video/2019/07964ae607ddf8a315.mp4';
        $obj->init_oss_client($uploadAuth,$uploadAddress);
        $result=$obj->upload_local_file($uploadAddress,$videoFile);
        print_r($result);
    }
<?php
/**
 * Created by PhpStorm.
 * User: niuyueyang
 * Date: 2019/7/21
 * Time: 14:50
 */
namespace App\Lib\AliyunSdk;
require_once EASYSWOOLE_ROOT.'/App/Lib/AliyunSdk/aliyun-php-sdk-core/Config.php';   // 假定您的源码文件和aliyun-php-sdk处于同一目录。
require_once EASYSWOOLE_ROOT.'/App/Lib/AliyunSdk/aliyun-oss-php-sdk-master/autoload.php';
use vod\Request\V20170321 as vod;
use OSS\OssClient;
use OSS\Core\OssException;
class AliVod{
    public $regionId='cn-shanghai';// 点播服务所在的Region,国内请填cn-shanghai,不要填写别的区域
    public $client='';
    public function __construct() {
        $profile = \DefaultProfile::getProfile($this->regionId, \Yaconf::get('aliyun.accessKeyId'), \Yaconf::get('aliyun.accessKeySecret'));
        $this->client= new \DefaultAcsClient($profile);
    }
    public function create_upload_video($title,$fileName,$other=[]) {
        $request = new vod\CreateUploadVideoRequest();
        $request->setTitle($title);        // 视频标题(必填参数)
        $request->setFileName($fileName); // 视频源文件名称,必须包含扩展名(必填参数)
        if(!empty($other['description'])){
            $request->setDescription("视频描述");  // 视频源文件描述(可选)
        }
        if(!empty($other['coverURL'])){
            $request->setCoverURL("http://img.alicdn.com/tps/TB1qnJ1PVXXXXXCXXXXXXXXXXXX-700-700.png"); // 自定义视频封面(可选)
        }
        if(!empty($other['tags'])){
            $request->setTags("标签1,标签2");  // 视频标签,多个用逗号分隔(可选)
        }

        $result= $this->client->getAcsResponse($request);
        if(empty($result)||empty($result->VideoId)){
            throw new \Exception('上传视频凭证不合法');
        }
        return $result;
    }
    public function init_oss_client($uploadAuth, $uploadAddress) {
        $this->ossClient = new OssClient($uploadAuth['AccessKeyId'], $uploadAuth['AccessKeySecret'], $uploadAddress['Endpoint'],
            false, $uploadAuth['SecurityToken']);
        $this->ossClient->setTimeout(86400*7);    // 设置请求超时时间,单位秒,默认是5184000秒, 建议不要设置太小,如果上传文件很大,消耗的时间会比较长
        $this->ossClient->setConnectTimeout(10);  // 设置连接超时时间,单位秒,默认是10秒
//        return $ossClient;
    }
    function upload_local_file($uploadAddress, $localFile) {
        return $this->ossClient->uploadFile($uploadAddress['Bucket'], $uploadAddress['FileName'], $localFile);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值