Я пишу приложение Spring Boot для обработки довольно своеобразных http-запросов, созданных приложением C ++.В настоящее время у меня нет возможности обновить клиент.
Приложение отправляет HTTP-запрос POST.Известные заголовки выглядят следующим образом:
Content-Length=[some integer]
Content-Type=multipart/form-data;boundary="CE85CD0D-A31F-49E0-BE27-DBBE4CF4EE98";charset=UTF-8
Тело выглядит примерно так:
--CE85CD0D-A31F-49E0-BE27-DBBE4CF4EE98
Content-Disposition: attachment; filename="file.zip"
[file data]
--CE85CD0D-A31F-49E0-BE27-DBBE4CF4EE98>--
Так что для моего контроллера не существует name='foo'
для поиска параметра.Попытка примерно так:
@PostMapping("/api/fileupload/")
public ResponseEntity<String> postFileUpload(MultipartHttpServletRequest request) throws IOException {
Map<String, MultipartFile> files = request.getFileMap();
request.getFileMap()
возвращает пустую карту.request.getFileNames()
также пусто.
Есть ли что-то стоящее, что могло бы помочь приложению распознать отправляемый файл?
Если мы не можем этого сделать, есть ли способ добраться до необработанного тела запроса для его анализа (очень хреново, но это единственный подход, который приходит на ум).