微信小程序批量上传图片到七牛(推荐)
一、引入七牛SDK
具体查看文档
https://github.com/gpake/qiniu-wxapp-sdk/blob/master/README.md
二、封装上传方法upload.js
/**
*上传函数
*/
constqiniuUploader=require("qiniuUploader");
constrequest=require("./request.js")
//初始化七牛相关参数
functioninitQiniu(){
varoptions={
uploadURL:'https://up.qiniup.com',
region:'ECN',//
uptokenURL:request.URL+'qiniu-token?token='+getApp().globalData.token,
//uptoken:'xxxx',
domain:'cdn-mpsoft.tujihome.com/',
};
qiniuUploader.init(options);
}
functionupload(filePath,success,fail){
initQiniu();
//交给七牛上传
qiniuUploader.upload(filePath,(res)=>{
success(res);
},(error)=>{
console.error('error:'+JSON.stringify(error));
fail(error);
});
}
/**
*批量上传
*@paramimages
*/
functionbatchUpload(images){
letuplist=[]
for(letindexinimages){
constpath=images[index]['url'];
constkey=images[index]['key'];
letpromise=newPromise((resolve,reject)=>{
qiniuUploader.upload(path,(res)=>{
resolve(res.imageURL)
},(error)=>{
reject(error)
},{
uploadURL:'https://up.qiniup.com',
region:'ECN',//
uptokenURL:request.URL+'qiniu-token?token='+getApp().globalData.token,
key:key,
domain:'cdn-mpsoft.tujihome.com/',
});
})
uplist.push(promise)
}
Promise.all(uplist).then((resultList)=>{
console.log(resultList);
returnresultList;
},error=>{
console.log(error)
throwerr;
})
}
module.exports={
'upload':upload,
'BatchUpload':batchUpload,
}
url:文件路径,key:文件名
batchUpload()传入数组,包含文件路径跟文件名,不需要自定义文件名可以修改下,只调用一次初始化方法,
返回值为包含所有文件路径的数组
三、调用
uploadImage(images){
varthat=this
varimageURL=[];
for(variofimages){
i.key='gclw_'+Date.parse(newDate())+Math.random()+'.jpg';
}
try{
imageURL=upload.BatchUpload(images);
returnimageURL;
}catch(e){
wx.showModal({
title:'提示',
content:e,
showCancel:false,
})
}
},
结果
总结
以上所述是小编给大家介绍的微信小程序批量上传图片到七牛,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。