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上傳異常則均刪除上傳過的圖片,然后直接返回錯誤給前端,保證圖片和記錄一致