首页 >> js开发 >> js微信小程序实现上传照片代码实例解析js大全
js微信小程序实现上传照片代码实例解析js大全
发布时间: 2021年1月13日 | 浏览:
| 分类:js开发
纸上谈坑
纸上谈坑在我实现了这个功能之前,我讲讲我是怎么在这个坑里爬上来的:我实现上传文件后端的接口的参数是String类型的前台传的参数:http://tmp/wx忽略很多字母数字.pnghttp://tmp/wx忽略很多字母数字.png但由于这张是本地照片url(外网无法访问),我后台拿到的是一个String类型,是没有办法是去识别这是一张图片的,访问不了这个数据,仅仅把它当做字符串而已。(低级错误)代码实现
代码实现
前言:后端接受文件有2种方式(参数): 1. MultipartFile 2.base64微信上传文件的开发文档微信上传文件的开发文档小程序代码小程序代码
文件上传
// 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)
}
})
}
})
},
})
文件上传
// 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后端代码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"}";
}
@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中添加以下代码(这个问题搞了我几个小时,因为少了上传文件的配置,就会导致multipartfile这个类失效)
commons-fileupload
commons-fileupload
1.3.3
commons-fileupload
commons-fileupload
1.3.3
以上就是本文的全部内容,希望对大家的学习有所帮助。
纸上谈坑在我实现了这个功能之前,我讲讲我是怎么在这个坑里爬上来的:我实现上传文件后端的接口的参数是String类型的前台传的参数:http://tmp/wx忽略很多字母数字.pnghttp://tmp/wx忽略很多字母数字.png但由于这张是本地照片url(外网无法访问),我后台拿到的是一个String类型,是没有办法是去识别这是一张图片的,访问不了这个数据,仅仅把它当做字符串而已。(低级错误)代码实现
代码实现
前言:后端接受文件有2种方式(参数): 1. MultipartFile 2.base64微信上传文件的开发文档微信上传文件的开发文档小程序代码小程序代码
// 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)
}
})
}
})
},
})
// 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后端代码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"}";
}
@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中添加以下代码(这个问题搞了我几个小时,因为少了上传文件的配置,就会导致multipartfile这个类失效)
commons-fileupload
commons-fileupload