2023年6月21日发(作者:)
jQuery+Ajax+form表单上传⽂件简单demo,附前后端代码jQuery+Ajax+form表单上传⽂件简单demo,附前后端代码⼀,书写⽬的:记录踩坑,,⼆,代码的功能使⽤ajax,和springBoot项⽬,从前端往后端传输⽂件三,代码详情前端代码:html:
ajax写法:function postData() { var form = new FormData(mentById("tf")); alert(form); $.ajax({ url: "localhost:8080/input/file", type: "post", data: form, processData: false, contentType: false, success: function (data) { alert(ify(data)) }, error: function (e) { (e); } }); }后端代码:entity:@Data@Builder@AllArgsConstructor@NoArgsConstructorpublic class GrayFileQo { private String marks;//备注 private MultipartFile multipartFile;} /** * jQuery+Ajax+form表单上传⽂件,其余信息,从form表单⾥⾯放值 * 在HttpServletRequest的.getParameter()⽅法中获取 * * @param request * @return */ @PostMapping("/input/file") @ApiOperation("上传⽂件") public Result inputFile(HttpServletRequest request) { MultipartHttpServletRequest multReq = (MultipartHttpServletRequest) request; MultipartFile file = e("uploadFile"); GrayFileQo inputQo = new GrayFileQo(); tipartFile(file); ks(ameter("inputInfoName")); ServiceResult result = ileService(inputQo); return new Result(result); }后端转储⼊参⽂件:@Slf4j@Servicepublic class FileInputServiceImpl implements FileInputService { @Override public ServiceResult inputFileService(GrayFileQo inputQo) { MultipartFile file = tipartFile(); File outFile = new File(_PATH + ginalFilename()); if (!()) { (); } try { erTo(outFile); } catch (IOException e) { ("===== ⽂件存盘异常 :", e); } return s(); }}前端通过form表单提交相关到后端,后端可以获取⽂件,和前端form表单内的信息,对应关系为:ps:下⾯写的代码仅供参考,如果遇到相同问题可以试试。我⾃⼰搭建了⼀个springBootWeb项⽬,但是在前后端交互的时候,后端会提⽰xxhttpMessageConvert不能转换,(英⽂太长,记不住)。处理⽅式:配置了HttpMessageConverter(⼤神勿喷,哈哈哈)@Slf4j@Component//@RestController这个注解返回json,但是新建项⽬的时候,直接⽤ajax请求,返回的不是json格式,//ajax从返回的data去不了值,然后配置了这个GrayHttpMessageConverter,过后可以使⽤,然后不使⽤这个类,也⼀样可以了//不同浏览器也能使⽤,排除缓存问题public class GrayHttpMessageConverter implements HttpMessageConverter { @Override public boolean canRead(Class clazz, MediaType mediaType) { boolean assignableFrom = gnableFrom();// n("canRead" + assignableFrom);// if (mediaType != null) {// n("canWrite" + de());// }// n("canWrite" + mediaType); return true; } @Override public boolean canWrite(Class clazz, MediaType mediaType) { boolean assignableFrom = gnableFrom();// n("canWrite" + assignableFrom);// if (mediaType != null) {// n("canWrite" + de());// }// n("canWrite" + mediaType); return assignableFrom; } @Override public List2023年6月21日发(作者:)
jQuery+Ajax+form表单上传⽂件简单demo,附前后端代码jQuery+Ajax+form表单上传⽂件简单demo,附前后端代码⼀,书写⽬的:记录踩坑,,⼆,代码的功能使⽤ajax,和springBoot项⽬,从前端往后端传输⽂件三,代码详情前端代码:html:
ajax写法:function postData() { var form = new FormData(mentById("tf")); alert(form); $.ajax({ url: "localhost:8080/input/file", type: "post", data: form, processData: false, contentType: false, success: function (data) { alert(ify(data)) }, error: function (e) { (e); } }); }后端代码:entity:@Data@Builder@AllArgsConstructor@NoArgsConstructorpublic class GrayFileQo { private String marks;//备注 private MultipartFile multipartFile;} /** * jQuery+Ajax+form表单上传⽂件,其余信息,从form表单⾥⾯放值 * 在HttpServletRequest的.getParameter()⽅法中获取 * * @param request * @return */ @PostMapping("/input/file") @ApiOperation("上传⽂件") public Result inputFile(HttpServletRequest request) { MultipartHttpServletRequest multReq = (MultipartHttpServletRequest) request; MultipartFile file = e("uploadFile"); GrayFileQo inputQo = new GrayFileQo(); tipartFile(file); ks(ameter("inputInfoName")); ServiceResult result = ileService(inputQo); return new Result(result); }后端转储⼊参⽂件:@Slf4j@Servicepublic class FileInputServiceImpl implements FileInputService { @Override public ServiceResult inputFileService(GrayFileQo inputQo) { MultipartFile file = tipartFile(); File outFile = new File(_PATH + ginalFilename()); if (!()) { (); } try { erTo(outFile); } catch (IOException e) { ("===== ⽂件存盘异常 :", e); } return s(); }}前端通过form表单提交相关到后端,后端可以获取⽂件,和前端form表单内的信息,对应关系为:ps:下⾯写的代码仅供参考,如果遇到相同问题可以试试。我⾃⼰搭建了⼀个springBootWeb项⽬,但是在前后端交互的时候,后端会提⽰xxhttpMessageConvert不能转换,(英⽂太长,记不住)。处理⽅式:配置了HttpMessageConverter(⼤神勿喷,哈哈哈)@Slf4j@Component//@RestController这个注解返回json,但是新建项⽬的时候,直接⽤ajax请求,返回的不是json格式,//ajax从返回的data去不了值,然后配置了这个GrayHttpMessageConverter,过后可以使⽤,然后不使⽤这个类,也⼀样可以了//不同浏览器也能使⽤,排除缓存问题public class GrayHttpMessageConverter implements HttpMessageConverter { @Override public boolean canRead(Class clazz, MediaType mediaType) { boolean assignableFrom = gnableFrom();// n("canRead" + assignableFrom);// if (mediaType != null) {// n("canWrite" + de());// }// n("canWrite" + mediaType); return true; } @Override public boolean canWrite(Class clazz, MediaType mediaType) { boolean assignableFrom = gnableFrom();// n("canWrite" + assignableFrom);// if (mediaType != null) {// n("canWrite" + de());// }// n("canWrite" + mediaType); return assignableFrom; } @Override public List
发布评论