微信小程序 上传 图片到七牛云

主要需要的就是file(文件本身)和token(上传凭证)。

然后在服务端部署获取上传凭证的业务代码,通过wx.request请求获取token。

var that = this;
 
wx.request({
 
 url: 'https://xxx/token',  //从你的服务器获取
 
 method: 'POST',
 
 data: {},
 
 header: {
 
  'content-type':'application/x-www-form-urlencoded'
 
 },
 
 success: function(res) {
 
   that.token = res.data; //默认返回一个token,赋值给已经有的token属性。这里只是示例,具体根据需求可自行设定。
 
 },
 
 fail:function (res) {
 
  console.log(res)
 
 }
 
})

 

 

 

  wx.chooseImage({
      count: 9,
      success: function (res) {
        
        var filePath = res.tempFilePaths[0];
        var file_length = res.tempFilePaths.length;
        that.setData({
          count: file_length
        })
        for(var i = 0; i < file_length; i++){
          wx.showLoading()
          var filePath = res.tempFilePaths[i];
          // 交给七牛上传
 
          var key = Math.random().toString(36).substr(2); //生成一个随机字符串的文件名
          
          wx.uploadFile({
          
           url: 'https://up.qiniup.com', //华东地区上传地址
          
           filePath: filePath,
          
           name: 'file',
          
           formData:{
          
            'token': that.data.token,//刚刚获取的上传凭证
          
            'key': key//这里是为文件设置上传后的文件名
          
           },
          
           success: function(r){
            console.log(r)
            var data = r.data;//七牛会返回一个包含hash值和key的JSON字符串
          
            if(typeof data==='string')data = JSON.parse(data.trim());//解压缩
          
            var imglist = that.data.imglist
            //拼接上你的七牛云空间域名
            imglist = imglist.concat('https://qiniuxxx.xiaotaitaddsdi222123.cn/' + data.key)
            that.setData({
              imglist: imglist
            });
            console.log(that.data.imglist)
          
            that.setData({
              count: --that.data.count
            })
            if(that.data.count <= 0){
              wx.hideLoading()
            }
          
           },
          
           fail:function (res) {
          
            console.log(res)
          
           }
          
          })
        }
        
      }
    }
  )

 

 

有问题加我 QQ 769387485

 

网上  有个 sdk    qiniu-wxapp-sdk  体验版上传不了   切记

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值