首先,我正在搜索并尝试在stackoverflow上描述的许多方法,但它仍然无法正常工作。
我无法通过ajax和SpringMVC上传任何文件。这是我的代码。什么可能是错的?
jsp代码:
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
与上传相关的依赖关系:
function uploadMeNow() {
var file = new FormData($("#myName"));
$.ajax({
url : "/m61/uploadMe",
data : {file: file},
type : "POST",
processData: false,
contentType: false,
cache: false,
success : function(response) {
if (response.indexOf("saved") >= 0) {
alert('ok')
}
},
error : function (xhr, status, error) {
alert(xhr.responseText);
if (xhr.responseText.indexOf("failed") >= 0) {
alert('not ok')
}
}
});
}
的javascript:
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="20971520" />
<property name="maxInMemorySize" value="1048576" />
</bean>
的xml:
@RequestMapping(value = "/uploadMe", method = RequestMethod.POST)
@ResponseBody
public String uploadMe(@RequestParam("file") MultipartFile file) {
System.out.println("aaa");
return "saved";
}
控制器:
headers: {'Content-type':'multipart/form-data'},
结果:当前请求不是多部分请求。
我也尝试添加到ajax:
@helper GenerateSelect(List<Dictionary<string, string>> dict)
{
foreach (var item in dict)
{
<option value="@item["id"]">@item["name"]</option>
}
}
结果:请求被拒绝,因为没有找到多部分边界
请帮帮我。