使用TCB云函数快速派发签名实现云点播客户端上传视频

2020-12-26 15:20:45 浏览数 (1)

今天给大家带来一篇使用TCB云函数来计算签名并返回给客户端的教程

云点播是什么,简单来说腾讯云点播(Video on Demand,VOD)提供有音视频应用相关需求的用户提供包括音视频采集上传、音视频存储、自动化转码处理、加速播放、媒体资源管理和音视频通信服务为一体的一站式 VPaaS (Video Platform as a Service)解决方案。

那么上传视频的方式有多种,常见的客户端上传视频方式有web端上传、小程序上传、Android/IOS上传。

云点播官方文档:客户端上传指引https://cloud.tencent.com/document/product/266/9219

客户端上传需要向自己的服务器请求计算签名,拿到签名后交给SDK校验,最终上传视频

本案例中,我将使用小程序Demo来进行客户端上传视频

小程序的Demo这里已经集成了一个现成的地址,通过wx.request获取签名https://xzb.zijiebao.com/get_vod_sign

不过调用这个地址上传的都是官网的sdkappid,所以这里要先自行实现一个签名的派发服务器。

代码语言:javascript复制
getSignature: function (callback) {
    wx.request({
      url: 'https://xzb.zijiebao.com/get_vod_sign',
      method: 'POST',
      data: {
        Action: 'GetVodSignatureV2'
      },
      dataType: 'json',
      success: function (res) {
        if (res.data && res.data.data.signature) {
          callback(res.data.data.signature);
        } else {
          return '获取签名失败';
        }
      }
    });
  },
  // 源码:https://github.com/tencentyun/vod-wx-sdk-v2/tree/master/demo

那么话不多说,直接进入签名服务的实现过程

1、注册TCB

(已有tcb的可忽略,这一步其实也可以用SCF来实现)

2、 新建云函数代码

3、配置签名相关代码

贴入云直播侧的签名代码示例,这里我用的是nodejs的,记得修改密钥

https://cloud.tencent.com/document/product/266/10638#node.js-.E7.AD.BE.E5.90.8D.E7.A4.BA.E4.BE.8B

4、新建package.json、保存并安装依赖

创建完成后点金云函数中,能看到如下的效果,我们还需手动添加一个package.json

这样在云函数侧下载依赖,云函数才能正常的运行保存文件后点击保存并安装依赖

5、新建HTTP访问

新建http访问服务,这一步完成后就可以在业务内通过http方式来请求调用

6、修改Demo中签名

在小程序内修改request.url 然后尝试请求签名,上传视频

结尾

通过TCB的云函数,快速的实现了签名的派发服务,整个过程抛去创建云函数的等待时间实际不到3分钟。Serverless真的是省了很多头发啊~

另外很多类似这种请求签名的其实都可以用这种思路去实现,省去了自行维护签名派发服务器的过程,还便捷高效。按需使用。省了精力又省钱。TCB真香

0 人点赞