微信小程序上传图片实例


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 apply/call/caller/callee/bind使用方法与区别分析
Oct 28 Javascript
jQuery第三课 修改元素属性及内容的代码
Mar 14 Javascript
cnblogs中在闪存中屏蔽某人的实现代码
Nov 14 Javascript
javascript不可用的问题探究
Oct 01 Javascript
Google (Local) Search API的简单使用介绍
Nov 28 Javascript
jQuery 无限级菜单的简单实例
Feb 21 Javascript
浅谈类似于(function(){}).call()的js语句
Mar 30 Javascript
用js编写的简单的计算器代码程序
Aug 04 Javascript
JavaScript实现简单的tab选项卡切换
Jan 05 Javascript
js和jquery中获取非行间样式
May 05 jQuery
详解Vue-cli代理解决跨域问题
Sep 27 Javascript
微信小程序实现的点击按钮 弹出底部上拉菜单功能示例
Dec 20 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
phpmyadmin的#1251问题
2006/11/25 PHP
php读取本地文件常用函数(fopen与file_get_contents)
2013/09/09 PHP
php+mysql实现数据库随机重排实例
2014/10/17 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
2016/12/07 PHP
PHP实现动态获取函数参数的方法示例
2018/04/02 PHP
PHP如何使用JWT做Api接口身份认证的实现
2020/02/03 PHP
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
2011/07/28 Javascript
用JQuery实现表格隔行变色和突出显示当前行的代码
2012/02/10 Javascript
JQuery打造省市下拉框联动效果
2014/05/18 Javascript
Three.js实现浏览器变动时进行自适应的方法
2017/09/26 Javascript
详解vue-cli+es6引入es5写的js(两种方法)
2019/04/19 Javascript
策略模式实现 Vue 动态表单验证的方法
2019/09/16 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
2020/08/28 Javascript
vue中activated的用法
2021/01/03 Vue.js
Python实现以时间换空间的缓存替换算法
2016/02/19 Python
Python冲顶大会 快来答题!
2018/01/17 Python
TensorFlow实现Softmax回归模型
2018/03/09 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
Python Socket编程之多线程聊天室
2018/07/28 Python
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
2019/01/10 Python
在pycharm 中添加运行参数的操作方法
2019/01/19 Python
python实现比对美团接口返回数据和本地mongo数据是否一致示例
2019/08/09 Python
Python 变量的创建过程详解
2019/09/02 Python
python实现批量处理将图片粘贴到另一张图片上并保存
2019/12/12 Python
解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题
2020/09/17 Python
Python爬虫入门教程01之爬取豆瓣Top电影
2021/01/24 Python
CSS+jQuery实现的在线答题功能
2015/04/25 HTML / CSS
YOOX美国官方网站:全球著名的多品牌时尚网络概念店
2016/09/11 全球购物
西班牙英格列斯百货法国官网:El Corte Inglés法国
2017/07/09 全球购物
StubHub美国:购买或出售您的门票
2019/07/09 全球购物
个人党性剖析材料
2014/02/03 职场文书
领导班子四风问题对照检查材料
2014/09/27 职场文书
2015年高一班主任工作总结
2015/05/13 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书
Python还能这么玩之只用30行代码从excel提取个人值班表
2021/06/05 Python
IIS服务器中设置HTTP重定向访问HTTPS
2022/04/29 Servers