postman传递参数:
head设置:
参数传递:
后端代码:
springboot的controller层:
@PostMapping(value = "/image/upload") public void upload(UserVo userVo,List<MultipartFile> files) { logger.info("upload param,file size={},userVo={}",files.size(),userVo); for(MultipartFile f: files){ System.out.println(f.getOriginalFilename()); } }
既可以接收到参数,文件前面也可以添加@RequstParam("")注解
为了减少阿里云上的无用图片,我们可以创建时候再保存图片,修改时候,将要删除的图片id传递进来,可以删除图片和记录,由于multipart不能传递到dubbo(因没有序列化),所以处理方案如下:
1、将图片的上传和删除均独立控制在controller层;
2、保存记录出错则在controller层中删除图片,或者io上传异常则均删除上传过的图片,然后直接返回错误给前端,保证图片和记录一致