微信小程序上传图片实例


Posted in Javascript onMay 28, 2018

在网上看了好多小程序上传图片,java后端接收的示例,但是不管在哪个网站看的,代码基本是一样的,都是代码特别多。

所以就自己写一个比较简单的。

 一 小程序端

user.wxml

<view class='user_head'> 
 <view> 
  <image src='{{ptuser.avatarUrl}}' bindtap='updateHead'></image> 
 </view> 
 <text>点击选择头像</text> 
</view>

user.js

// 更换头像 
span style="font-size:18px;color:#FF0000;"> updateHead: function () { 
  var that = this 
  // 上传图片 获取路径 
  wx.chooseImage({ 
   success: function (res) { 
    console.log('临时路径:' + res.tempFilePaths[0]) 
      wx.uploadFile({ 
       url: app.globalData.baseUrl + '/file/uploadFile', 
       filePath: res.tempFilePaths[0], 
       name: 'file', 
       success: function (result) { 
        console.log("返回路径:" + result.data) 
       } 
      }) 
   }, 
  }) 
 },

 二 java端

package cn.helloxhs.moudle.common; 
 
import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.OutputStream; 
 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
 
import org.apache.commons.fileupload.disk.DiskFileItem; 
import org.springframework.stereotype.Controller; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.ResponseBody; 
import org.springframework.web.multipart.MultipartFile; 
import org.springframework.web.multipart.commons.CommonsMultipartFile; 
 
import cn.helloxhs.base.controller.BaseController; 
 
/** 
 * 类说明 
 * 
 * @author 肖荷山 
 * @version 创建时间:2017年12月23日 上午11:14:27 
 */ 
@Controller 
@RequestMapping("/file") 
public class FileController extends BaseController { 
  @RequestMapping("/uploadFile") 
  @ResponseBody 
  public Object uploadFile(HttpServletResponse response, HttpServletRequest request, MultipartFile file) { 
    String realPath = request.getSession().getServletContext().getRealPath("/temp"); 
    try { 
      CommonsMultipartFile cf = (CommonsMultipartFile) file; 
      DiskFileItem fi = (DiskFileItem) cf.getFileItem(); 
      File f1 = fi.getStoreLocation(); 
      InputStream ips = new FileInputStream(f1); 
      OutputStream ops = new FileOutputStream(realPath + "/" + "xhs.jpg"); 
      byte[] b = new byte[1024]; 
      int len; 
      try { 
        while ((len = ips.read(b)) != -1) { 
          ops.write(b, 0, len); 
        } 
      } catch (IOException e) { 
        e.printStackTrace(); 
      } finally { 
        // 完毕,关闭所有链接 
        try { 
          ops.close(); 
          ips.close(); 
        } catch (IOException e) { 
          e.printStackTrace(); 
        } 
      } 
 
    } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
    } 
    return realPath; 
  } 
 
}

图片存在了项目的temp目录下

微信小程序上传图片实例

简单就好,没其他功能,单纯上传图片。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS 自动安装exe程序
Nov 30 Javascript
跨域请求之jQuery的ajax jsonp的使用解惑
Oct 09 Javascript
如何书写高质量jQuery代码(使用jquery性能问题)
Jun 30 Javascript
JS动画效果打开、关闭层的实现方法
May 09 Javascript
javascript实现图片延迟加载方法汇总(三种方法)
Aug 27 Javascript
jquery实现表单验证简单实例演示
Nov 23 Javascript
JavaScript深度复制(deep clone)的实现方法
Feb 19 Javascript
js下将金额数字每三位一逗号分隔
Feb 19 Javascript
用JS写的一个Ajax库(实例代码)
Aug 06 Javascript
JS利用cookies设置每隔24小时弹出框
Apr 20 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
Aug 21 Javascript
webpack中的热刷新与热加载的区别
Apr 09 Javascript
讲解vue-router之什么是动态路由
May 28 #Javascript
.vue文件 加scoped 样式不起作用的解决方法
May 28 #Javascript
微信小程序实现上传图片功能
May 28 #Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
May 28 #Javascript
vue-cli构建项目下使用微信分享功能
May 28 #Javascript
vue2.0学习之axios的封装与vuex介绍
May 28 #Javascript
vue-cli项目中使用公用的提示弹层tips或加载loading组件实例详解
May 28 #Javascript
You might like
关于PHP自动判断字符集并转码的详解
2013/06/26 PHP
PHP根据传入参数合并多个JS和CSS文件的简单实现
2014/06/13 PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
2015/07/29 PHP
php版本CKEditor 4和CKFinder安装及配置方法图文教程
2019/06/05 PHP
微信推送功能实现方式图文详解
2019/07/12 PHP
TP5框架页面跳转样式操作示例
2020/04/05 PHP
PHP8.0新功能之Match表达式的使用
2020/07/19 PHP
jQuery 性能优化指南(2)
2009/05/21 Javascript
jquery的Tooltip插件 qtip使用详细说明
2010/09/08 Javascript
js通过地址栏给action传值(中文乱码全是问号)
2013/05/02 Javascript
jQuery防止click双击多次提交及传递动态函数或多参数
2014/04/02 Javascript
js使用栈来实现10进制转8进制与取除数及余数
2014/06/11 Javascript
javascript三元运算符用法实例
2015/04/16 Javascript
详解JavaScript操作HTML DOM的基本方式
2015/10/21 Javascript
JavaScript黑洞数字之运算路线查找算法(递归算法)实例
2016/01/28 Javascript
JavaScript设计模式开发中组合模式的使用教程
2016/05/18 Javascript
基于原生JS实现图片裁剪
2016/08/01 Javascript
Angularjs实现带查找筛选功能的select下拉框示例代码
2016/10/04 Javascript
关于 angularJS的一些用法
2017/11/29 Javascript
详解Javascript中new()到底做了些什么?
2018/03/29 Javascript
vue.js使用v-pre与v-html输出HTML操作示例
2018/07/07 Javascript
[43:24]VG vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python使用wmi模块获取windows下硬盘信息的方法
2015/05/15 Python
详解Python3中字符串中的数字提取方法
2017/01/14 Python
Python中static相关知识小结
2018/01/02 Python
使用实现XlsxWriter创建Excel文件并编辑
2018/05/04 Python
对python中if语句的真假判断实例详解
2019/02/18 Python
怎么解决pycharm license Acti的方法
2020/10/28 Python
旧时光糖果:Old Time Candy
2018/02/05 全球购物
客服服务心得体会
2013/12/30 职场文书
《美丽的公鸡》教学反思
2014/02/25 职场文书
导师就业推荐信范文
2014/05/22 职场文书
员工工作表扬信
2015/05/05 职场文书
浅谈:电影《孔子》观后感(范文)
2019/10/14 职场文书
2020年元旦晚会策划书模板
2019/12/30 职场文书
Java设计模式中的命令模式
2022/04/28 Java/Android