使用swagger2調試接口時,發現參數是數組時,會有問題。html
沒有問題的狀況,以下:api
@PostMapping("/list/str") public ReturnDTO testStr(@RequestParam String[] files){ return ReturnDTOUtil.success(); }
接收String類型的數組,頁面上輸入string類型數組,沒有問題,後臺能夠接收處理。數組
可是上傳的類型變爲multipartfile的數組時,以下:瀏覽器
@PostMapping("/list/pictures") public ReturnDTO testPictures(@RequestParam("files") MultipartFile[] files, @RequestParam("pic_Name") String pic_Name){ for (int i = 0; i < files.length; i++) { String fileName = files[i].getOriginalFilename(); //圖片名字 String fileStr = fileName.substring(fileName.lastIndexOf("\\")+1,fileName.length()); String filePath = "G:test/picture/"+fileStr; FileUtils.saveFileToDisk(files[i],filePath); } return ReturnDTOUtil.success(); }
後臺沒法收,並報錯:app
而在頁面上直接使用form表單直接上傳時,倒是能夠的,代碼以下:post
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <h2>上傳多個文件 實例</h2> <form action="/api/upload/list/pictures" method="post" enctype="multipart/form-data"> <p>選擇文件:<input type="file" name="files"></p> <p>選擇文件:<input type="file" name="files"></p> <p><input type="submit" value="提交"></p> </form> </body> </html>
而使用multipartfile的單對象傳遞時,沒有問題; 對比單文件與多文件時,發現瀏覽器中請求ui
單文件:3d
多文件:調試
在多文件傳給後臺時,後臺沒法識別。orm
是否是這個類型致使後臺沒法識別,若是是的話,那這是否是swagger2中的一個bug呢?