微信小程序通过云函数下载视频

一、正常情况

下载视频正常流程:先调用的downloadFile接口将文件下载在本地,然后用downLoadFile返回的临时路径作为参数去调用saveVideoToPhotosAlbum

wx.downloadFile({
  url: 'https://example.com/audio/123', // 视频下载链接(非真实)
  success (res) {
    // 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容
    if (res.statusCode === 200) {
      // 将视频保存至相册中
      wx.saveVideoToPhotosAlbum({
		  filePath: res.tempFilePath,
		  success (res) {
		    console.log(res.errMsg)
		  }
	  })
    }
  }
})

通过上述的解决方案可以实现用户下载视频,这种解决办法需要配置可信域名。
在这里插入图片描述

二、其他方案

用云函数和云储存来实现视频的下载
在这里插入图片描述

流程:

1、用户发起保存视频请求
2、调用云函数
--------下载视频至云存储
--------返回fileID
3、通过fileID从云存储下载视频至本地
3、通过本地视频的临时路径,将视频保存至用户相册

伪代码:

      // 调用云函数获取fileID
      wx.cloud.callFunction({
          name: 'download',
          data: {
            file_url: video_url
          }
        });
      .then(result => {
        const { download_url } = result.result;
        // 下载视频,下载云存储视频到本地会返回一个临时路径
         wx.cloud.downloadFile({
	        fileID,
	        success: function (res) { 
	        	// 通过临时路径来保存视频到用户的手机里
	        	wx.saveVideoToPhotosAlbum({
			        filePath: result.tempFilePath,
			        success: function (res) { resolve(res) },
			        fail: function (error) { reject(error); }
			      })
			},
	        fail: function (error) { reject(error); }
	      });
	    });
      })
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心下载即可。源码是经

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值