微信小程序實現(xiàn)上傳照片代碼實例解析
紙上談坑
在我實現(xiàn)了這個功能之前,我講講我是怎么在這個坑里爬上來的:
我實現(xiàn)上傳文件后端的接口的參數(shù)是String類型的
前臺傳的參數(shù):http://tmp/wx忽略很多字母數(shù)字.png
但由于這張是本地照片url(外網(wǎng)無法訪問),我后臺拿到的是一個String類型,是沒有辦法是去識別這是一張圖片的,訪問不了這個數(shù)據(jù),僅僅把它當做字符串而已。(低級錯誤)
代碼實現(xiàn)
前言:后端接受文件有2種方式(參數(shù)): 1. MultipartFile 2.base64
小程序代碼
<!-- index.wxml -->
<view>
<view>文件上傳</view>
<view>
<input id="file" type="file" bindtap="uploader"></input>
</view>
</view>
// index.js
Page({
data: {
},
uploader: function () {
wx.chooseImage({
count: 1,
success: function(res) {
let imgPath = res.tempFilePaths[0]
wx.uploadFile({
url: 'http://localhost:8080/customerRegister/uploadPricture',
filePath: imgPath,
name: 'files',
success:res=>{
console.log(res)
}
})
}
})
},
})
java后端代碼
@RequestMapping(value = "/customerRegister",produces = "application/json;charset=utf-8")
public class {
@RequestMapping("/uploadPricture")
@ResponseBody
public String uploadPricture(@RequestParam("file") MultipartFile[] file) throws IOException {
MultipartFile multipartFile = file[0];
System.out.println("圖片名稱:"+multipartFile.getOriginalFilename());
InputStream inputStream = multipartFile.getInputStream();
return "{"mas":"ok"}";
}
P.s. 注意:這是一個ssm項目,因此你需要在pom.xml中添加依賴和在springmvc.xml中添加以下代碼(這個問題搞了我?guī)讉€小時,因為少了上傳文件的配置,就會導致multipartfile這個類失效)
<!--pom.xml 文件上傳所需要的依賴-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.3</version>
</dependency>
<!--springmvc.xml-->
<!-- SpringMVC上傳文件時,需要配置MultipartResolver處理器 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"></property>
<!-- 指定所上傳的總大小不能超過1T。注意maxUploadSize屬性的限制不是針對單個文件,而是所有文件 -->
<property name="maxUploadSize" value="10485760000" />
<property name="maxInMemorySize" value="40960" />
</bean>
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
千分位數(shù)字格式化(用逗號隔開 代碼已做了修改 支持0-9位逗號隔開)的JS代碼
這篇文章主要介紹了千分位數(shù)字格式化的JS代碼,有需要的朋友可以參考一下2013-12-12
KnockoutJS 3.X API 第四章之數(shù)據(jù)控制流if綁定和ifnot綁定
這篇文章主要介紹了KnockoutJS 3.X API 第四章之數(shù)據(jù)控制流if綁定和ifnot綁定的相關資料,需要的朋友可以參考下2016-10-10
js動態(tài)添加的DIV中的onclick事件簡單實例
下面小編就為大家?guī)硪黄猨s動態(tài)添加的DIV中的onclick事件簡單實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-07-07
javascript設計模式 – 享元模式原理與用法實例分析
這篇文章主要介紹了javascript設計模式 – 享元模式,結合實例形式分析了javascript享元模式相關概念、原理、用法及操作注意事項,需要的朋友可以參考下2020-04-04
使用JS輕松實現(xiàn)ionic調用鍵盤搜索功能(超實用)
這篇文章主要介紹了使用JS輕松實現(xiàn)ionic調用鍵盤搜索功能(超實用)的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-09-09

