小程序代码
upload:function(e){ var that = this; wx.showActionSheet({ itemList: ['从相册选择','拍照'], itemColor:"#f7982a", success:function(res){ if(!res.cancer){ if (res.tapIndex==0){ that.chooseWxImageShop('album'); } else if (res.tapIndex == 1) { that.chooseWxImageShop('camera') } } } }) }, chooseWxImageShop: function (type) { var that = this; wx.chooseImage({ sizeType: ['original', 'compressed'], sourceType: [type], success: function (res) { /*上传单张 that.data.orderDetail.shopImage = res.tempFilePaths[0], that.upload_file(API_URL + 'shop/shopIcon', res.tempFilePaths[0]) */ // 上传多张(遍历数组,一次传一张) for (var index in res.tempFilePaths) { that.upload_file('后台接口地址', res.tempFilePaths[index]) } } }) }, upload_file: function (url, filePath) { var that = this; wx.uploadFile({ url: url, filePath: filePath, name: 'imagefile', header: { 'content-type': 'multipart/form-data' }, // 设置请求的 header formData: { 'guid':"procomment" }, // HTTP 请求中其他额外的 form data success: function (res) { console.log(JSON.parse(res.data).msg) }, fail: function (res) { } }) }
后台代码
public String doUpload(HttpServletRequest request, HttpServletResponse response, @RequestParam(value = "imagefile", required = false) MultipartFile imagefile) throws Exception { try { String type = imagefile.getOriginalFilename().substring(imagefile.getOriginalFilename().lastIndexOf(".")).toLowerCase(); File targetFile = new File("D:/images/upload/" , type); if (!targetFile.exists()) { targetFile.mkdirs(); } imagefile.transferTo(targetFile); return type } catch (Exception e) { return "上传失败" }