微信小程序上传图片到服务器实例代码


Posted in Javascript onNovember 07, 2017

上传图片到服务器:

1.先在前端写一个选择图片的区域来触发wx.chooseImage接口并用wx.setStorage接口把图片路径存起来。

微信小程序上传图片到服务器实例代码

-wxml
 <view class="shangchuan" bindtap="choose">
  <image style="width:100%;height:100%;" src="{{tempFilePaths}}"></image>
 </view>
 <button formType='submit' class="fabu">发布项目</button>
 /**选择图片 */
 choose: function () {
  var that = this
  wx.chooseImage({
   count: 1,
   sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
   sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
   success: function (res) {
    var tempFilePaths = res.tempFilePaths
    that.setData({
     tempFilePaths: res.tempFilePaths
    })
    console.log(res.tempFilePaths)
    wx.setStorage({ key: "card", data: tempFilePaths[0] })
   }
  })
 },

2.使用wx.uploadFile将刚才上传的图片上传到服务器上

formSubmit2: function (e) {
    var that = this
    var card = wx.getStorageSync('card')
    wx.uploadFile({
     url: app.globalData.create_funds,
     filePath: card,
     name: 'card',
     formData: {
      'user_id': app.globalData.user_id,
      'person': e.detail.value.person,
      'company': e.detail.value.company,
     },
     success: function (res) {
      console.log(res)
     }
    })
   }
  }
 },

PS: 微信小程序上传一或多张图片

一.要点

1.选取图片

wx.chooseImage({
   sizeType: [], // original 原图,compressed 压缩图,默认二者都有
   sourceType: [], // album 从相册选图,camera 使用相机,默认二者都有
   success: function (res) {
    console.log(res);
    var array = res.tempFilePaths, //图片的本地文件路径列表
   }
  })

2.上传图片

wx.uploadFile({
   url: '', //开发者服务器的 url
   filePath: '', // 要上传文件资源的路径 String类型!!!
   name: 'uploadFile', // 文件对应的 key ,(后台接口规定的关于图片的请求参数)
   header: {
    'content-type': 'multipart/form-data'
   }, // 设置请求的 header
   formData: { }, // HTTP 请求中其他额外的参数
   success: function (res) {
   },
   fail: function (res) {
   }
  })

二.代码示例

// 点击上传图片
upShopLogo: function () {
  var that = this;
  wx.showActionSheet({
   itemList: ['从相册中选择', '拍照'],
   itemColor: "#f7982a",
   success: function (res) {
    if (!res.cancel) {
     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(API_URL + 'shop/shopImage', res.tempFilePaths[index])
    }
*/
   }
  })
 },
upload_file: function (url, filePath) {
  var that = this;
  wx.uploadFile({
   url: url,
   filePath: filePath,
   name: 'uploadFile',
   header: {
    'content-type': 'multipart/form-data'
   }, // 设置请求的 header
   formData: { 'shopId': wx.getStorageSync('shopId') }, // HTTP 请求中其他额外的 form data
   success: function (res) {
    wx.showToast({
       title: "图片修改成功",
       icon: 'success',
       duration: 700
      })
   },
   fail: function (res) {
   }
  })
 },

总结

以上所述是小编给大家介绍的微信小程序上传图片到服务器实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
利用jQuery的$.event.fix函数统一浏览器event事件处理
Dec 21 Javascript
jquery ajax学习笔记2 使用XMLHttpRequest对象的responseXML
Oct 16 Javascript
JS防止用户多次提交的简单代码
Aug 01 Javascript
javascript中文本框中输入法切换的问题
Dec 10 Javascript
利用原生JavaScript获取元素样式只是获取而已
Oct 08 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
Feb 20 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
Jul 12 Javascript
关于在mongoose中填充外键的方法详解
Aug 14 Javascript
webpack分离css单独打包的方法
Jun 12 Javascript
layui实现三级导航菜单
Jul 26 Javascript
基于JavaScript实现简单抽奖功能代码实例
Oct 20 Javascript
微信小程序实现多张图片上传功能
Nov 18 Javascript
解决Vue使用mint-ui loadmore实现上拉加载与下拉刷新出现一个页面使用多个上拉加载后冲突问题
Nov 07 #Javascript
vue组件间通信子与父详解(二)
Nov 07 #Javascript
原生JS实现 MUI导航栏透明渐变效果
Nov 07 #Javascript
mongoose设置unique不生效问题的解决及如何移除unique的限制
Nov 07 #Javascript
vue组件父与子通信详解(一)
Nov 07 #Javascript
vue组件父子间通信之综合练习(聊天室)
Nov 07 #Javascript
Mint UI 基于 Vue.js 移动端组件库
Nov 07 #Javascript
You might like
使用Xdebug调试和优化PHP程序之[1]
2007/04/17 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
2014/12/15 PHP
PHP第三方登录―QQ登录实现方法
2017/02/06 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
Dojo 学习笔记入门篇 First Dojo Example
2009/11/15 Javascript
javascript动画对象支持加速、减速、缓入、缓出的实现代码
2012/09/30 Javascript
javascript利用apply和arguments复用方法
2013/11/25 Javascript
javascript中style.left和offsetLeft的用法说明
2014/03/07 Javascript
防止登录页面出现在frame中js代码
2014/07/22 Javascript
javascript学习笔记(二)数组和对象部分
2014/09/30 Javascript
layui中layer前端组件实现图片显示功能的方法分析
2017/10/13 Javascript
@angular前端项目代码优化之构建Api Tree的方法
2018/12/24 Javascript
JS实现根据数组对象的某一属性排序操作示例
2019/01/14 Javascript
js实现3D照片墙效果
2019/10/28 Javascript
Node.js中console.log()输出彩色字体的方法示例
2019/12/01 Javascript
javascript使用canvas实现饼状图效果
2020/09/08 Javascript
vue实现可移动的悬浮按钮
2021/03/04 Vue.js
[18:20]DOTA2 HEROS教学视频教你分分钟做大人-昆卡
2014/06/11 DOTA
Python实现Tab自动补全和历史命令管理的方法
2015/03/12 Python
python结合opencv实现人脸检测与跟踪
2015/06/08 Python
全面了解Python的getattr(),setattr(),delattr(),hasattr()
2016/06/14 Python
使用python分析统计自己微信朋友的信息
2019/07/19 Python
使用Python实现画一个中国地图
2019/11/23 Python
python实现密码验证合格程序的思路详解
2020/06/01 Python
Python模拟登录和登录跳转的参考示例
2020/10/30 Python
俄罗斯运动、健康和美容产品在线商店:Lactomin.ru
2020/07/23 全球购物
如何开启linux的ssh服务
2015/02/14 面试题
如何安装ruby on rails
2014/02/09 面试题
小学防溺水制度
2014/01/29 职场文书
秘书英文求职信范文
2014/01/31 职场文书
纪念九一八事变演讲稿:忘记意味着背叛
2014/09/14 职场文书
小学教师师德整改措施
2014/09/29 职场文书
卫生保健工作总结2015
2015/05/18 职场文书
社区低保工作总结2015
2015/07/23 职场文书
JavaScript嵌入百度地图API的最详细方法
2021/04/16 Javascript
一文搞懂Python Sklearn库使用
2021/08/23 Python