今天给大家带来一篇使用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真香