转载自:https://blog.csdn.net/u014505277/article/details/51851495
使用cordova插件上传文件,大家会遇到后台怎么接收数据的问题,这篇文章会前后端结合讲述cordova-plugin-file-transfer的使用;希望能帮助到读者。
1、前端js的调用cordova插件
- function onDeviceReady(fileURL) {
- var win = function (r) {
- console.log("Code = " + r.responseCode);
- console.log("Response = " + r.response);
- console.log("Sent = " + r.bytesSent);
- }
- var fail = function (error) {
- alert("An error has occurred: Code = " + error.code);
- console.log("upload error source " + error.source);
- console.log("upload error target " + error.target);
- }
- var options = new FileUploadOptions();
- options.fileKey = "file"; // 表单元素的名称。同input标签中的name属性。
- options.fileName = fileURL.substr(fileURL.lastIndexOf('/') + 1); // 文件名称
- alert("文件名称"+options.fileName);
- //options.mimeType = "text/plain"; // 文件类型,默认是image/jpeg
- var params = {};
- params.value1 = "test";
- params.value2 = "param";
- options.params = params;
- var ft = new FileTransfer();
- // fileURL 待上传文件路径
- // encodeURI("***") 上传服务器路径
- ft.upload(fileURL, encodeURI("http://172.16.5.186:8081/Demo/demoManager/fileAdd.vc"), win, fail, options);
- }
- @RequestMapping(value = "/fileAdd", method = { RequestMethod.POST,RequestMethod.GET })
- public String usersInsert(
- @RequestParam(value="file",required=false) MultipartFile file1,
- HttpServletRequest request, HttpServletResponse response,
- ModelMap model) {
- Map<String, Object> result = new HashMap<String, Object>(); // 用于保存 返回信息
- // 新建list存放MultiparFile,便于遍历操作数据库。
- ArrayList<MultipartFile> muList = new ArrayList<MultipartFile>();
- muList.add(file1);
- }
- if(muList.size()<1){
- // copy文件过程失败
- return null;
- }
- for (int i = 0; i < muList.size(); i++) {
- MultipartFile collectFile = muList.get(i);
- String pedestalName = collectFile.getOriginalFilename(); // 获取文件名称
- String fileSavePath = "D:\\"+pedestalName; // 文件保存路径
- try {
- collectFile.transferTo(new File(fileSavePath)); // 将文件保存到临时文件夹中
- } catch (IOException e1) {
- // copy文件过程失败
- errorMessage("文件上传失败,请重新上传文件!", result, response); // 提示信息
- return null;
- }
- }
- return null;
- }