首页 > 课堂 > 小程序 > 正文

微信小程序上传图片到阿里云oss的实例讲解

2020-03-21 16:16:19
字体:
来源:转载
供稿:网友

首先到阿里云下载文档示例

解压后里面有个upload.js文件,编辑这个文件,把accessid、accesskey、host换成自己的,由于小程序只接受https,所以host最好是绑定自己的域名,且实用了https,然后找到new_multipart_params,使用log打印出来,接下来运行一遍index.html,上传图片后会打印出我们需要的东西

微信小程序源码,小程序开发,上传图片,阿里云,oss

微信小程序源码,小程序开发,上传图片,阿里云,oss

接下来就小程序上传了,使用

chooseImage和uploadFile
 

  1. uploadImage: function () { 
  2.     var that = this 
  3.     wx.chooseImage({ 
  4.       count: 3, // 默认9 
  5.       sizeType: ['original'], // 可以指定是原图还是压缩图,默认二者都有 
  6.       sourceType: ['album''camera'], // 可以指定来源是相册还是相机,默认二者都有 
  7.       success: function (res) { 
  8.         // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片 
  9.         var tempFilePaths = res.tempFilePaths 
  10.         var myDate = new Date() 
  11.         var ossPath = 'seekings/' + myDate.getFullYear() 
  12.         for (var i = 0; i < tempFilePaths.length; i++) { 
  13.           // 获取文件后缀 
  14.           var pathArr = tempFilePaths[i].split('.'
  15.           //  随机生成文件名称 
  16.           var fileRandName = Date.now() + "" + parseInt(Math.random() * 1000) 
  17.           var fileName = fileRandName + '.' + pathArr[3] 
  18.           // 要提交的key 
  19.           var fileKey = ossPath + '/' + fileName 
  20.           wx.uploadFile({ 
  21.             url: 'https://xxx.xxx.com',  
  22.             filePath: tempFilePaths[i], 
  23.             name: 'file'
  24.             formData: { 
  25.               name: tempFilePaths[i], 
  26.               key: fileKey, 
  27.               policy: 'xxxxxxxxxx'
  28.               OSSAccessKeyId: 'xxxxxxx'
  29.               signature: 'xxxxxx'
  30.               success_action_status: "200" 
  31.             }, 
  32.             success: function (res) { 
  33.               var data = res.data 
  34.               console.log(res) 
  35.             } 
  36.           }) 
  37.         } 
  38.         that.setData({ 
  39.           upliadImages: res.tempFilePaths 
  40.         }) 
  41.       } 
  42.     }) 
  43.   }, 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表