Я пытаюсь создать бэкэнд, куда я отправляю два PDF и работаю с ними. Для этого мне нужно внедрить службу REST, но я не могу их получить.
PostMapping
@PostMapping("/post")
CompareJob compareJob(@RequestBody File file1) {
System.out.print("Received File: " + file1);
CompareJob compareJob = new CompareJob();
return compareJob;
}
Для выполнения запросов POST я использую Почтальон, где я установил следующие вещи:
Заголовки -> Тип контента: application / pdf
Body -> Binary: testPDF.pdf
Это ответ, который я получаю:
{
"timestamp": "2019-03-12T13:55:12.898+0000",
"status": 415,
"error": "Unsupported Media Type",
"message": "Content type 'application/pdf;charset=UTF-8' not supported",
"path": "/post"
}
Я очень плохо знаком с сервисами REST и буду очень признателен за подсказки, что не так.
Спасибо за любую помощь!
Изменить после предложения amin10043:
@PostMapping("/post")
CompareJob compareJob(@RequestParam("file1") MultipartFile file1) {
System.out.print("Received File: " + file1);
CompareJob compareJob = new CompareJob();
return compareJob;
}
После прочтения я не должен проверять Content-Type в Почтальоне, я получаю этот ответ:
{
"timestamp": "2019-03-12T14:37:52.765+0000",
"status": 500,
"error": "Internal Server Error",
"message": "Current request is not a multipart request",
"path": "/post"
}
Моя ошибка была в том, что я загрузил pdf как двоичный файл, а не как данные формы в почтальоне. Должно быть установлено так: https://snag.gy/H4w5S8.jpg