微信小程序上传图片实例


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中查找最近的共有祖先元素的实现代码
Dec 30 Javascript
jquery绑定原理 简单解析与实现代码分享
Sep 06 Javascript
javascript静态页面传值的三种方法分享
Nov 12 Javascript
JavaScript作用域与作用域链深入解析
Dec 06 Javascript
简体中文转换繁体中文(实现代码)
Dec 25 Javascript
JavaScript网页定位详解
Jan 13 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
Oct 17 Javascript
javascript实现微信分享
Dec 23 Javascript
javascript先序遍历DOM树的方法
Feb 27 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
Oct 27 Javascript
vue.js中v-on:textInput无法执行事件问题的解决过程
Jul 12 Javascript
Node.JS循环删除非空文件夹及子目录下的所有文件
Mar 12 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
无线电广播与收音机发展的历史回眸
2021/03/02 无线电
安装APACHE
2007/01/15 PHP
php SQL防注入代码集合
2008/04/25 PHP
PHP的autoload机制的实现解析
2012/09/15 PHP
Thinkphp调用Image类生成缩略图的方法
2015/03/07 PHP
利用PHP自动生成印有用户信息的名片
2016/08/01 PHP
php 多文件上传的实现实例
2016/10/23 PHP
php实现HTML实体编号与非ASCII字符串相互转换类实例
2016/11/02 PHP
PHP自动补全表单的两种方法
2017/03/06 PHP
js实现适用于素材网站的黑色多级菜单导航条效果
2015/08/24 Javascript
express文件上传中间件Multer详解
2016/10/24 Javascript
简单理解js的prototype属性及使用
2016/12/07 Javascript
使用JavaScriptCore实现OC和JS交互详解
2017/03/28 Javascript
JS仿Base.js实现的继承示例
2017/04/07 Javascript
微信小程序 页面跳转传值实现代码
2017/07/27 Javascript
对于防止按钮重复点击的尝试详解
2019/04/22 Javascript
Python中文件遍历的两种方法
2014/06/16 Python
Python中的装饰器用法详解
2015/01/14 Python
理解Python中的With语句
2016/03/18 Python
在PyCharm下使用 ipython 交互式编程的方法
2019/01/17 Python
Win10环境python3.7安装dlib模块趟过的坑
2019/08/01 Python
浅析pandas 数据结构中的DataFrame
2019/10/12 Python
浅谈python量化 双均线策略(金叉死叉)
2020/06/03 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
2020/06/06 Python
Python 使用SFTP和FTP实现对服务器的文件下载功能
2020/12/17 Python
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
阿迪达斯德国官方网站:adidas德国
2017/07/12 全球购物
Bed Bath & Beyond加拿大官网:购买床上用品、浴巾、厨房电器等
2019/10/04 全球购物
财务出纳岗位职责
2014/02/03 职场文书
同事吵架检讨书
2014/02/05 职场文书
春节请假条
2014/04/11 职场文书
生日庆典策划方案
2014/06/02 职场文书
党员干部观看《周恩来四个昼夜》思想汇报
2014/09/10 职场文书
党员教师四风问题对照检查材料
2014/09/26 职场文书
中秋节寄语2015
2015/03/24 职场文书
Java8 CompletableFuture 异步回调
2022/04/28 Java/Android