PHP oss上传视频转码消息回调

当我们上传视频(eg:mp4,avi,mov)到OSS的时候,可能我们会接到像这样子的需求–给相对应的视频添加截图,加水印,转为高清的视频.

那我们应该从何入手呢?

首选,我们要知道啊里云的后台是有设置这样的一个功能的,可以指定一个文件夹对其内容进行转码加水印截图等功能,当其转码成功后可发送回调消息,这样子我们就可以获取转码后的视频路径存在我们的数据库中了.

以下为tp5接收消息回调后存进数据库的demo:

/**
     * @deprecated 接收上传视频后的通知
     */
    public function callback()
    {
   
        $body = "";
        switch($_SERVER['CONTENT_TYPE']){
   
            case 'application/json;charset=utf-8':
                // 这里通过输入端来获取数据
                $body = file_get_contents('php://input');
                break;
        }
        if (empty($body) || empty(json_decode($body) || !isset(json_decode($body)->Message))) return;
        $data = json_decode(json_decode($body)->Message);
        if ($data->Type != 
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ARM OSS 提供了自定义上传回调的功能,您可以通过设置上传回调URL,在文件上传时,ARM OSS 会向指定的 URL 发送 HTTP POST 请求,通知您文件上传的状态和相关信息。 要设置自定义上传回调,您需要完成以下步骤: 1. 创建一个用于接收上传回调请求的服务器或者服务。 2. 在 ARM OSS 管理控制台或者通过 SDK 创建文件上传任务时,设置上传回调 URL。 3. 在您的服务器或者服务中,编写处理上传回调请求的代码,根据请求中的信息,执行相关的操作(例如记录上传日志、通知上传完成等)。 以下是一个处理上传回调请求的示例代码: ``` const http = require('http'); http.createServer((req, res) => { let body = ''; req.on('data', chunk => { body += chunk.toString(); }); req.on('end', () => { const result = JSON.parse(body); // 处理上传回调请求,例如记录上传日志、通知上传完成等 console.log(result); res.end(); }); }).listen(3000); ``` 在上述示例代码中,我们创建了一个 HTTP 服务器,并监听 3000 端口。当收到上传回调请求时,我们将请求体解析为 JSON 对象,并输出到控制台,最后发送响应。 注意:为了保证上传回调的可靠性,您需要在服务器或者服务中处理可能的错误和异常,例如请求超时、网络错误等。您也可以在上传回调请求中返回 HTTP 状态码和错误信息,用于后续的处理和排查。 希望以上信息能够对您有所帮助。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值