tp5.1对接阿里云视频点播——删除

继上一篇上传,接着说下视频的删除功能,为什么没有修改呢,因为阿里云的修改api只是修改视频的id名和视频名称,不会更改存储的上传视频文件,所以我现在业务逻辑,修改的时候先添加视频获取视频id,修改完数据后再删除旧的,当然,感兴趣的可以去看看具体的api信息

tp5.1对接阿里云视频点播——删除_第1张图片
image.png

接下来我们看到服务端sdk,这里其实出现了新版和旧版的区别,我用的是旧版,新版composer安装了,但偷懒,没做接入,我先说下旧版,有时间再在结尾加上新版使用过程

看下图的两个文件,其实上一篇下载下来的上传sdk里面就包含了,当时没细看,后来写完发现了,可以直接在sdk文件里新建文件引用

tp5.1对接阿里云视频点播——删除_第2张图片
image.png
tp5.1对接阿里云视频点播——删除_第3张图片
image.png

集成方法还是放在common.php里面:

//阿里云视频点播删除接口
function deleteVideo($vid)
{
    //删除接口是用的阿里云旧版服务端sdk,新版composer文档不清晰,云api参数跟文档不一致,暂时不采用
    require_once '../public/alivod/ali.php';
    //阿里云上传adk需要绝对路径,所以先存储本地,上传完成后再进行删除
   $ali = new ali();

   $data = $ali->delinit($vid);
   return $data;
}

这个在public/alivod目录下,注意看上面截图

accessKeyId = $accessKeyId;
//        $this->accessKeySecret = $accessKeySecret;
//    }

    function initVodClient($accessKeyId, $accessKeySecret) {
        $regionId = 'cn-shanghai';  // 点播服务接入区域
        $profile = DefaultProfile::getProfile($regionId, $accessKeyId, $accessKeySecret);
        return new DefaultAcsClient($profile);
    }
    /**
     * 删除视频
     * @param client 发送请求客户端
     * @return DeleteVideoResponse 删除视频响应数据
     */
    public function deleteVideos($client, $videoIds) {
        $request = new vod\DeleteVideoRequest();
        $request->setVideoIds($videoIds);   // 支持批量删除视频;videoIds为传入的视频ID列表,多个用逗号分隔
        $request->setAcceptFormat('JSON');
        return $client->getAcsResponse($request);
    }

    public function delinit($vid){
        $accessKeyId='你的id';
        $accessKeySecret='你的secret';
        try {
            $client = $this->initVodClient($accessKeyId, $accessKeySecret);
            $delInfo = $this->deleteVideos($client, $vid);
            return json_encode($delInfo->RequestId);
        } catch (Exception $e) {
            return 1;
        }
    }
}

你可能感兴趣的:(tp5.1对接阿里云视频点播——删除)