requestBody中的MultipartHttpServletRequest和DTO

时间:2015-01-01 13:01:14

标签: java spring-mvc

我正在使用弹簧4.我正在尝试在控制器中接收文件上传和DTO。像这样:

 @RequestMapping(value = "/uploadFile", method = RequestMethod.POST, headers = "content-type=multipart/*")
    @ResponseStatus(value = HttpStatus.OK)
    @ResponseBody
    public Long uploadFile(@RequestBody SomeDTO someDTO, MultipartHttpServletRequest request)

但我无法完成这项工作。我只是成功地将每个DTO参数作为@RequestParam发送。

此控制器的正确客户端调用是什么。或者这是错误的方式?

1 个答案:

答案 0 :(得分:0)

function xmlhttpPost(strURL, form) {
    var xmlHttpReq = false;
    var self = this;
    self.xmlHttpReq = new XMLHttpRequest();
    self.xmlHttpReq.open('POST', strURL, true);
    self.xmlHttpReq.setRequestHeader('Content-Type', 'multipart/form-data');
    if ( !! window.FormData) {
        var formData = new FormData();
        formData.append('file', form);
        self.xmlHttpReq.send(formData);
    }
}