Мне нужно отправить 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? Иначе есть ли альтернатива?