专栏首页编程录cloudflare视频转码接口

cloudflare视频转码接口

 /**
     * 视频上传转码
     * @param $video_url
     * @param $vide_name
     */
    public static function postVideo($video_url, $vide_name)
    {
        require_once(__DIR__ . '/../../common/libs/requests/library/Requests.php');
        \Requests::register_autoloader();
        $headers = array(
            'X-Auth-Key' => Yii::$app->params['cf_key'],
            'X-Auth-Email' => Yii::$app->params['cf_email']
        );
        $url = "https://api.cloudflare.com/client/v4/accounts/".Yii::$app->params['cf_account_id']."/stream/copy";
        $data = '{"url":"' . $video_url . '","meta":{"name":"' . $vide_name . '"}}';
        $response = \Requests::post($url, $headers, $data);
        $postData = json_decode($response->body);
        if ($postData->success) {
            return $postData;
        } else {
            return false;
        }
    }

    /**
     * 获取视频转码后的状态
     * @param string $videoCode
     * @return bool|mixed
     */
    public static function getVideoStatus($videoCode)
    {
        require_once(__DIR__ . '/../../common/libs/requests/library/Requests.php');
        \Requests::register_autoloader();
        $headers = array(
            'X-Auth-Key' => Yii::$app->params['cf_key'],
            'X-Auth-Email' => Yii::$app->params['cf_email'],
            'Content-Type' => 'application/json'
        );
        $url = "https://api.cloudflare.com/client/v4/accounts/".Yii::$app->params['cf_account_id']."/media/{$videoCode}";
        $response = \Requests::get($url, $headers);
        $postData = json_decode($response->body);
        if($postData->success){
            return $postData;
        }else{
            return false;
        }
    }

    /**
     * 删除转码后的视频
     * @param string $videoCode
     * @return bool
     */
    public static function delVideo($videoCode)
    {
        require_once(__DIR__ . '/../../common/libs/requests/library/Requests.php');
        \Requests::register_autoloader();
        $headers = array(
            'X-Auth-Key' => Yii::$app->params['cf_key'],
            'X-Auth-Email' => Yii::$app->params['cf_email'],
            'Content-Type' => 'application/json'
        );
        $url = "https://api.cloudflare.com/client/v4/zones/".Yii::$app->params['cf_zone_id']."/media/{$videoCode}";
        $response = \Requests::delete($url, $headers);
        if($response->status_code == 200){
            return true;
        }else{
            return false;
        }
    }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 个推消息推送RestAPI版

    素描
  • Vue结合Ueditor绑定数据后拿不到值解决方法

    素描
  • Yii2下使用微信分享JSDK

    素描
  • CVE-2019-7805漏洞分析

    漏洞摘要 Adobe Acrobat Reader DC中存在一个释放后使用的漏洞,它允许攻击者使用当前用户的权限执行任意代码。 CVE CVE-2019-78...

    周俊辉
  • JAVAWeb| 详解JSP技术、指令、隐式对象、标签

    首先,我们来了解一下JSP这个东东,大家看它的缩写可能有点懵逼,告诉大家全称之后可能会更容易理解,JSP全称:Java Server Page ,直译过来便是...

    Python进击者
  • ​DevOps - 从渐进式交付说起(含实践 Demo)

    如果让你主导一款千万、甚至亿级用户产品的功能迭代,你会怎么做?你需要面对的挑战可能来自于:

    CODING
  • state_dict

    state_dict(destination=None, prefix='', keep_vars=False)[source]

    于小勇
  • Docker 入门,看这篇就够了

    关于Docker的发展史,本文就不做介绍,有兴趣的小伙伴们可以查看这篇文章,挺有意思的。http://www.oschina.net/news/57838/do...

    用户6543014
  • ajax无刷新页面切换,历史记录后退前进解决方案

    我们在工作中常常遇到需要用ajax来显示下一页和上一页,ajax可以不刷新页面进行操作!但是,假如你想通过浏览器的历史记录返回上一页和下一页。那么ajax默认是...

    用户7657330
  • 关于page_struct中virtual指针的思考

    其中 virtual 居然直接 指向物理页面的起始地址,不是单单根据图推断的,文章内容也是这么描述的

    执生

扫码关注云+社区

领取腾讯云代金券