При загрузке данных формы, отправленных ajax, отсутствует файл - PullRequest
0 голосов
/ 05 сентября 2018

Мне нужно отправить HTML-форму в приложение Springboot. Перед отправкой формы манипулируют, поэтому для отправки вручную я использую ajax-запрос:

$.ajax({
    method: 'POST',
    processData: false,
    contentType: false,
    url: form_submit_url,
    data: formData
});

Я проверил formData, чтобы убедиться, что он содержит все значения формы, включая файлы.

Следующий код работает для всех элементов формы, кроме файлов. Проверка functionRequest показывает, что параметры файла отсутствуют.

@PostMapping(
    value = "form_submit_url",
    consumes = {
        MediaType.MULTIPART_FORM_DATA_VALUE
    },
    produces = MediaType.APPLICATION_JSON_VALUE
)
@ResponseStatus(HttpStatus.ACCEPTED)
public FunctionResult executeFunction(
    final @RequestParam MultiValueMap<String, Object> functionRequest
) {
    return null;
}

MultiValueMap используется, поскольку полученные параметры могут отличаться.

Можно ли получать файлы вместе с другими параметрами при использовании MultiValueMap? Иначе есть ли альтернатива?

...