我正在开发一个带有框架 3.2.3.RELEASE 的 spring mvc 应用程序
在我的应用程序中,我使用 StandardServletMultipartResolver 处理 Multipart,但使用 apache commons-fileupload 1.3 时情况相同。
我想知道为什么 isMultipart 方法的实现只考虑 POST 方法,而不考虑 PUT 方法。如果我想更新实体和相关文件,我必须使用 POST 来完成。
查看 org.springframework.web.multipart.support.Standard ServletMultipartResolver:
public boolean isMultipart(HttpServletRequest request) {
// Same check as in Commons FileUpload...
if (!"post".equals(request.getMethod().toLowerCase()) ) {
return false;
}
String contentType = request.getContentType();
return (contentType != null && contentType.toLowerCase().startsWith("multipart/"));
}
在 org.apache.commons.fileupload.servlet.ServletFileU pload 我有:
public static final boolean isMultipartContent(HttpServletRequest request) {
if (!POST_METHOD.equalsIgnoreCase(request.getMethod() )) {
return false;
}
return FileUploadBase.isMultipartContent(new ServletRequestContext(request));
}
不是一件至关重要的事情,实际上只是使用 PUT 工作的 POST 方法.. 但我想了解为什么不考虑 PUT !
谢谢你的任何回复马可