使用MultipartBody訪問接口後報錯,提示不支持,網上搜說是這個框架問題,SpringBoot對multipart/form-data類型的文件接收和其它是不一樣的
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.IllegalStateException: No primary constructor found for org.apache.cxf.jaxrs.ext.multipart.MultipartBody] with root cause
java.lang.IllegalStateException: No primary constructor found for org.apache.cxf.jaxrs.ext.multipart.MultipartBody
後臺改用HttpServletRequest接收
import javax.servlet.http.HttpServletRequest;
@Override
public ResultVO<String> appadd(HttpServletRequest request) throws IOException, ServletException {
ResultVO<String> result=new ResultVO<String>();
MultipartHttpServletRequest params=((MultipartHttpServletRequest) request);
List<MultipartFile> files = ((MultipartHttpServletRequest) request).getFiles("file");
for (int i = 0; i < files.size(); ++i){
MultipartFile file = files.get(i);
StorePath storePath = storageClient.uploadFile(file.getInputStream(), file.getSize(),FilenameUtils.getExtension(file.getOriginalFilename()), null);
String path=storePath.getPath();
}
String call=params.getParameter("call");
System.err.println("=call==="+call);
result.setCode(200);
result.setMsg("新增成功");
return result;
}