当前位置: 首页 > news >正文

腾讯云点播小程序端上传 SDK

云点播是专门应对上传大视频文件的。
腾讯云点播文档:https://cloud.tencent.com/document/product/266/18177
这个文档比较简单,实在不行,把demo下载下来,一看就明白了,然后再揉一下挪到自己的项目里。完事。
getSignature: function(callback) {
uni.request({
url: ‘https://www.xxx.com/mnp/zsapi/getSignature.php’,
method: ‘POST’,
data: {
mid: uni.getStorageSync(‘mid’),
token: uni.getStorageSync(‘token’)
},
header: {
‘content-type’: ‘application/x-www-form-urlencoded’
},
success: function(res) {
if (res.data.signature) {
callback(
res.data.signature
);
} else {
return ‘获取签名失败’;
}
}
});
},
ChooseImage(e) {
console.log(e)
let that = this
// 选择多张图片
uni.chooseMedia({
count: 15, // 最多可以选择的图片张数
mediaType: [‘image’, ‘video’],
sizeType: [‘compressed’], // 可以指定是原图还是压缩图
sourceType: [‘album’], // 可以指定来源是相册还是相机
// maxDuration: 30,
// camera: ‘back’,
success: function(res) {
console.log(res, res.tempFiles[0], ‘???’)
if (res.type == ‘video’) {
if (e == ‘0’) {
uni.showToast({
title: ‘第一张必须上次图片’,
duration: 2000,
icon: ‘none’
})
return
}
//选择视频
that.videoFile = res.tempFiles[0]
setTimeout(() => {
that.startUpload(e)
}, 500)

					} else {// 选择图片成功,res.tempFiles 包含选择的图片路径列表uni.showLoading({title: '上传中...'})// console.log(res.tempFiles)that.uploadDIY( res.tempFiles, 0, 0, 0,  res.tempFiles.length,e);returnfor (let i = 0; i < res.tempFiles.length; i++) {uni.uploadFile({url: 'https://www.xxx.com/mnp/zsapi/gongdi_upload.php',filePath: res.tempFiles[i].tempFilePath,name: 'file',formData: {'mid': uni.getStorageSync('mid'),'token': uni.getStorageSync('token'),},success(res) {const data = JSON.parse(res.data.replace('\uFEFF',''))console.log(data)if (data.bs == 'success') {uni.showToast({title: data.errmsg,duration: 2000,icon: 'success'})that.infolist[e].imglist.push(data.img)} else if (data.bs == 'guoqi') {uni.showToast({title: data.errmsg,duration: 2000,icon: 'error'})setTimeout(function() {uni.redirectTo({url: '../../pagesD/login/login'})}, 500)} else {uni.showToast({title: data.errmsg,duration: 2000,icon: 'error'})}},fail() {uni.showToast({title: '服务器繁忙,请稍后再试',duration: 2000,icon: 'error'})}})}}}})},startUpload(e) {let that = thisuni.showLoading({title: '上传中...',mask: true,})const self = this;const uploader = VodUploader.start({mediaFile: self.videoFile, //必填,把chooseVideo回调的参数(file)传进来getSignature: self.getSignature, //必填,获取签名的函数error: function(result) {console.log("error");console.log(result);// uni.hideLoading();uni.showModal({title: "上传失败",content: JSON.stringify(result),showCancel: false});},progress: function(result) {console.log("progress");console.log(result);// uni.hideLoading();self.progress = parseInt(result.percent * 100)},finish: function(result) {console.log("finish");console.log(result);let brr = []let obj = {}obj.url = result.videoUrlbrr.push(`myvideo${e}`)that.videoarr = brrobj.id =  `myvideo${e}`self.infolist[e].videolist.push(obj)uni.showToast({title: '上传成功',duration: 2000,icon: 'success'})self.reset();}});this.uploader = uploader},uploadDIY(filePaths, successUp, failUp, i, length,e) {let that = thisuni.uploadFile({url: 'https://www.xxxx.com/mnp/zsapi/gongdi_upload.php',filePath: filePaths[i].tempFilePath,name: 'file',formData: {'mid': uni.getStorageSync('mid'),'token': uni.getStorageSync('token'),},success: (res) => {const data = JSON.parse(res.data.replace('\uFEFF',''))if (data.bs == 'success') {uni.showToast({title: data.errmsg,duration: 2000,icon: 'success'})successUp++;// console.log('上传图片成功:', JSON.parse(res.data));// var data = JSON.parse(res.data);// console.log(data)// 把获取到的路径存入imagesurl字符串中that.infolist[e].imglist.push(data.img)// console.log(this.data.imagesurl)} else if (data.bs == 'guoqi') {uni.showToast({title: data.errmsg,duration: 2000,icon: 'error'})setTimeout(function() {uni.redirectTo({url: '../../pagesD/login/login'})}, 500)} else {uni.showToast({title: data.errmsg,duration: 2000,icon: 'error'})}},fail: (res) => {failUp++;},complete: () => {i++;if (i == length) {// Toast('总共' + successUp + '张上传成功,' + failUp + '张上传失败!');} else { //递归调用uploadDIY函数that.uploadDIY(filePaths, successUp, failUp, i, length,e);}},});},

相关文章:

腾讯云点播小程序端上传 SDK

云点播是专门应对上传大视频文件的。 腾讯云点播文档&#xff1a;https://cloud.tencent.com/document/product/266/18177 这个文档比较简单&#xff0c;实在不行&#xff0c;把demo下载下来&#xff0c;一看就明白了&#xff0c;然后再揉一下挪到自己的项目里。完事。 getSign…...

【MATLAB源码-第88期】基于matlab的灰狼优化算法(GWO)的栅格路径规划,输出做短路径图和适应度曲线

操作环境&#xff1a; MATLAB 2022a 1、算法描述 灰狼优化算法&#xff08;Grey Wolf Optimizer, GWO&#xff09;是一种模仿灰狼捕食行为的优化算法。灰狼是群居动物&#xff0c;有着严格的社会等级结构。在灰狼群体中&#xff0c;通常有三个等级&#xff1a;首领&#xff…...

electron使用electron-builder macOS windows 打包 签名 更新 上架

0. 前言 0.1 项目工程 看清目录结构&#xff0c;以便您阅读后续内容 0.2 参考资料 &#xff08;1&#xff09;macOS开发 证书等配置/打包后导出及上架 https://www.jianshu.com/p/c9c71f2f6eac首先需要为Mac App创建App ID&#xff1a; 填写信息如下—Description为"P…...

autojs项目搭建和入门实践

Auto.js 是一款无需root权限的javascript自动化软件&#xff0c;它可以帮助用户在手机上自动执行各种任务&#xff0c;比如自动填写表单、自动点击按钮、自动切换应用等&#xff0c;并且可以通过图形用户界面来管理和编辑脚本。 软件环境 操作系统&#xff1a;win10 VSCODE&…...

uni-app 跨端开发注意事项

文章目录 前言H5正常但App异常的可能性标题二H5正常但小程序异常的可能性小程序正常但App异常的可能性小程序或App正常&#xff0c;但H5异常的可能性App正常&#xff0c;小程序、H5异常的可能性使用 Vue.js 的注意区别于传统 web 开发的注意H5 开发注意微信小程序开发注意支付宝…...

在 vscode 中的json文件写注释,不报错的解决办法

打开 vscode 的「设置」&#xff0c;搜索&#xff1a;files: associations&#xff0c;然后添加 *.json jsonc最后...

基于uniapp的 电子书小程序——需求整理

前言 想开发一个很简单的 电子书阅读小程序&#xff0c;要怎么做的。下面从功能、数据库设计这一块来说一下。说不一定能从某个角度提供一些思路 开发语言 springcloud uniapp 小程序&#xff08;vue2&#xff09;mysql 说明 电子书的主题是电子书&#xff0c;我们在日常…...

Hutool HttpRequest 首次请求正常 第二次被系统拦截

Hutool HttpRequest 首次请求正常 第二次被系统拦截 功能描述异常现象错误代码 异常排查问题跟踪问题总结处理方案最终修改后的代码 功能描述 需要请求第三方某个接口&#xff0c;获取接口中的数据。 异常现象 使用main 方法 通过Hutool 工具类发出请求&#xff0c;获取数据…...

github国内访问小解(windows)

git 下载安装 使用 github 前必须确保电脑上已经安装了 Git&#xff0c;可以从 Git 官方网站去下载。 官方的网站在国内访问会比较慢&#xff0c;这里可以选择国内镜像&#xff1a;https://registry.npmmirror.com/binary.html?pathgit-for-windows/ github 之旅 确认电脑已…...

NX二次开发UF_CSYS_set_wcs_display 函数介绍

文章作者&#xff1a;里海 来源网站&#xff1a;https://blog.csdn.net/WangPaiFeiXingYuan UF_CSYS_set_wcs_display Defined in: uf_csys.h int UF_CSYS_set_wcs_display(int display_status ) overview 概述 Set display of work coordinate system. 展示工作坐标系。 …...

DNS 区域传输 (AXFR)

漏洞描述 docker环境搭建 使用 AXFR 协议的 DNS 区域传输是跨 DNS 服务器复制 DNS 记录的最简单机制。为了避免在多个 DNS 服务器上编辑信息&#xff0c;可以在一台服务器上编辑信息&#xff0c;并使用 AXFR 将信息复制到其他服务器。但是&#xff0c;如果您不保护您的服务器&…...

Ubuntu 安装 JMeter:轻松上手

Apache JMeter 是一个开源的负载测试工具&#xff0c;可以用于测试静态和动态资源&#xff0c;确定服务器的性能和稳定性。在本文中&#xff0c;我们将讨论如何下载和安装 JMeter。 安装 Java&#xff08;已安装 Java 的此步骤可跳过&#xff09; 要下载 Java&#xff0c;请遵…...

在工业生产环境下,服务器没有互联网,如何通过代理自己的电脑上互联网?

服务器主机是CentOS7操作系统.&#xff0c;服务器的局域网是10.0.6.x网段。我的笔记本的以太网口的局域网ip是也是10.0.6.x&#xff0c;由于这个10.0.6.x的整个局域网是没有拨号上网的所有无法访问互联网。 但是&#xff0c;如果笔记本脸上wifi&#xff0c;wifi的网段是192.168…...

【brpc学习实践六】backup request场景案例

应用场景 有时为了保证可用性,需要同时访问两路服务,哪个先返回就取哪个。在brpc中,这有多种做法,根据server是否挂在同一个命名服务内有所区别。 当后端server可以挂在一个命名服务内时 Channel开启backup request。这个Channel会先向其中一个server发送请求,如果在Ch…...

el-table导出为excel表格

目录 1.下载依赖 2.引入插件 3.定义函数 4.设置table的id 1.下载依赖 npm intall --save xlsx npm intall --save file-saver2.引入插件 import FileSaver from "file-saver"; import XLSX from "xlsx";3.定义函数 exportExcel() {let fix document…...

CVE-2022-0543(Redis 沙盒逃逸漏洞)

简介 CVE-2022-0543是一个与Redis相关的安全漏洞。在Redis中&#xff0c;用户连接后可以通过eval命令执行Lua脚本&#xff0c;但在沙箱环境中脚本无法执行命令或读取文件。然而&#xff0c;攻击者可以利用Lua沙箱中遗留的变量package的loadlib函数来加载动态链接库liblua5.1.s…...

查swap内存使用

查询linux的swap被什么使用了 查询centos的swap被什么进程使用了 swap内存被什么程序占用&#xff0c;什么程序使用了swap分区&#xff0c;占用swap内存的进程 查系统使用swap内存前10个进程&#xff1a; for i in $( cd /proc;ls |grep "^[0-9]"|awk $0 >10…...

Element UI的Tabs 标签页位置导航栏去除线条

在实际开发中&#xff0c;我们调整了相关样式&#xff0c;导致导航栏的相关样式跟随不上&#xff0c;如下图所示&#xff1a; 因为我跳转了前边文字的样式并以在导航栏添加了相关头像&#xff0c;导致右边的线条定位出现问题&#xff0c;我在想&#xff0c;要不我继续调整右边…...

【Python 训练营】N_1 验证密码

N_1 验证密码 题目 设计一个用户密码验证程序&#xff0c;要求密码输入只有3次机会&#xff0c;且密码中不能包含”*”字符。 分析 需要考虑3个问题&#xff1a;验证次数、特殊字符和正误密码判断&#xff1b;验证次数需要使用循环&#xff0c;3个问题需要用到分支结构&…...

Pinia 和 Vuex 的对比,storeToRefs 的原理

目录 1&#xff0c;Pinia 介绍2&#xff0c;和 Vuex 的对比3&#xff0c;storeToRefs 源码分析 1&#xff0c;Pinia 介绍 官网简介 Pinia 使用上的问题&#xff0c;官方文档很详细&#xff0c;这里不做赘述。 Pinia 是 Vue 的专属状态管理库&#xff0c;支持vue2和vue3&#x…...

告别数据抖动!手把手教你配置SGM58200 ADC的50/60Hz工频抗干扰采样(附STM32 I2C代码)

工业级ADC抗干扰实战&#xff1a;SGM58200精准抑制50/60Hz工频噪声的配置指南 在工业测量和传感器信号采集中&#xff0c;工频干扰就像一位不请自来的"噪音制造者"。当你的精密仪器读数出现周期性波动&#xff0c;或是数据采集结果出现难以解释的抖动时&#xff0c;很…...

C++ MCP网关延迟突增23ms?别再查业务逻辑了——从RDTSC时间戳校准到Intel RAPL功耗反推,定位硬件级性能陷阱

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;C 编写高吞吐量 MCP 网关 性能调优指南 MCP&#xff08;Model Control Protocol&#xff09;网关作为 AI 模型服务的统一接入层&#xff0c;其吞吐能力直接决定多模型协同调度的实时性与稳定性。在 C 实…...

2019年数据科学在线课程全景与学习路径解析

1. 2019年数据科学在线课程全景概览 2019年是数据科学教育爆发式增长的关键年份。当时我正好在帮团队筛选系统性提升数据科学能力的课程资源&#xff0c;亲身体验了各大平台的课程质量差异。与2018年相比&#xff0c;这一年的在线课程呈现出三个显著特征&#xff1a;Python完全…...

从模型导出到推理部署:避开ONNX输入维度不匹配的那些‘坑‘(以YOLO/ResNet为例)

从模型导出到推理部署&#xff1a;避开ONNX输入维度不匹配的那些坑&#xff08;以YOLO/ResNet为例&#xff09; 视觉模型部署工程师们常遇到这样的场景&#xff1a;在本地训练好的YOLOv5模型表现优异&#xff0c;导出为ONNX格式后却报出[ONNXRuntimeError] : 2 : INVALID_ARGU…...

拆解大疆M300电池BMS:基于TI TIDA-010030方案的硬件架构深度分析

大疆M300智能电池BMS系统解析&#xff1a;基于TI TIDA-010030的工程实践 当一块大疆M300无人机电池从30米高空坠落时&#xff0c;其内置的电池管理系统&#xff08;BMS&#xff09;仍能精确上报剩余电量并触发安全保护——这背后是德州仪器TIDA-010030参考设计与大疆工程团队的…...

免费音乐解锁工具:3分钟搞定QQ音乐、网易云加密文件解密

免费音乐解锁工具&#xff1a;3分钟搞定QQ音乐、网易云加密文件解密 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库&#xff1a; 1. https://github.com/unlock-music/unlock-music &#xff1b;2. https://git.unlock-music.dev/um/web 项目地址: htt…...

Python基本知识点总结

python中单行注释采用 # 开头。python 中多行注释使用三个单引号()或三个双引号(""")。Python字符串1. 字符串是以单引号​​​​​或双引号​​"​​​括起来的任意文本&#xff0c;比如​​abc​​​&#xff0c;​​"xyz"​​​等等。请注意&…...

终极指南:如何免费解锁《原神》60帧限制,体验144Hz流畅游戏

终极指南&#xff1a;如何免费解锁《原神》60帧限制&#xff0c;体验144Hz流畅游戏 【免费下载链接】genshin-fps-unlock unlocks the 60 fps cap 项目地址: https://gitcode.com/gh_mirrors/ge/genshin-fps-unlock 还在为《原神》PC版只能跑60帧而烦恼吗&#xff1f;想…...

别再傻傻串联了!手把手教你用Verilog写4bit超前进位加法器(附完整代码)

别再傻傻串联了&#xff01;手把手教你用Verilog写4bit超前进位加法器&#xff08;附完整代码&#xff09; 第一次接触数字电路设计时&#xff0c;很多工程师都会对加法器的实现方式感到困惑。为什么简单的加法运算会有这么多不同的实现方案&#xff1f;为什么教科书上总是强调…...

handsontable输入中文第一个字母丢失问题

首先查看 版本是否为最新版本 ,官网说 V14.4已经修复了问题 github上有解决方法https://github.com/handsontable/handsontable/issues/10773#issuecomment-1940713298 加上这个参数 :imeFastEdit"true" 另外说一下怎么重新实现将自带的功能(删除行/删除列等等)…...