Я обнаружил это странное поведение при разработке контроллера SpringBoot.
Версия SpringBoot в pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
Создание контроллера
@Controller
@RequestMapping("/route")
@Slf4j
public class Api {
@PostMapping
public ResponseEntity<Void> createFromCsv(@RequestParam("label") String label,
@RequestParam MultipartFile csvFile) {
log.debug("label {}", label);
return new ResponseEntity<>(HttpStatus.OK);
}
}
ЕслиЯ создаю сообщение, отправляющее значение, подобное этому
В моем внутреннем коде, когда данные будут поступать и манипулировать к весне @RequestParam, за исключением файла из нескольких частейсовершенно не правы
Как вы можете видеть, значение метки, представляющей пробел во время записи, дублируется в моем контроллере.Этого не произойдет, если я удалю MultipartFile из контроллера
UPDATE
Я видел, что дополнительный RequestParam из подписи будет помещен в requestMultipartParam
Анализируя запрос httpServletRequest, это то, что у меня есть
Как видите, значение дублируется.