微信小程序> 小程序批量上传图片到七牛

小程序批量上传图片到七牛

浏览量:490 时间: 来源:flysnownet

一、引入七牛SDK

具体查看文档

https://github.com/gpake/qiniu-wxapp-sdk/blob/master/README.md

二、封装上传方法upload.js

/** * 上传函数 */const qiniuUploader = require("qiniuUploader");const request = require("./request.js")// 初始化七牛相关参数function initQiniu() {    var options = {        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);}function upload(filePath, success, fail) {    initQiniu();    // 交给七牛上传    qiniuUploader.upload(filePath, (res) => {        success(res);    }, (error) => {        console.error('error: ' + JSON.stringify(error));        fail(error);    });}/** * 批量上传 * @param images */function batchUpload(images) {    let uplist = []    for (let index in images) {        const path = images[index]['url'];        const key = images[index]['key'];        let promise = new Promise((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);        return resultList;    }, error => {        console.log(error)        throw err;    })}module.exports = {    'upload': upload,    'BatchUpload' : batchUpload,}
url:文件路径,key:文件名

batchUpload()传入数组,包含文件路径跟文件名,不需要自定义文件名可以修改下,只调用一次初始化方法,

返回值为包含所有文件路径的数组

三、调用

    uploadImage(images) {        var that = this        var imageURL = [];        for (var i of images) {            i.key = 'gclw_' + Date.parse(new Date()) + Math.random() + '.jpg';        }        try {            imageURL = upload.BatchUpload(images);            return imageURL;        } catch (e) {            wx.showModal({                title: '提示',                content: e,                showCancel: false,            })        }    },

结果

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎