Загрузка файлов с использованием angular8 и springboot

#angular #file-upload

#angular #загрузка файла

Вопрос:

Я не понимаю приведенный ниже код

 const req = new HttpRequest('POST', '/upload/file', file, {
  reportProgress: true
});
  

Мне нужна ясность по второму аргументу, который является URL, на данный момент я не понимаю, как он должен отображаться на сервере. Я понимаю, что приведенный выше код не использует http, и. Вот где я заблудился. Пожалуйста, объясните, как сервер увидит этот запрос без URL.

Ответ №1:

Код не будет работать, если вы не укажете URL. Обычно springboot работает через порт 8080 на локальном компьютере. Ниже приведен пример кода контроллера.

 @RestController
@RequestMapping("/upload")
public class ExampleClass{

    @PostMapping("/file")
    public String fileUpload(MultipartFile file){
        // upload file code
    }

}
  

@RequestMapping("/upload") является родительским отображением всего контроллера и @PostMapping("/file") является дочерним отображением. (Это зависит от того, нужно ли вам @PostMapping("/upload/file") , вы можете это получить). Это путь, который вам нужен для отправки запроса на сервер из интерфейса. Таким образом, сервер будет идентифицировать, что это поступающий запрос post, поэтому он выполнит метод.

если порт вашего сервера работает в 8080, вам нужно изменить на 'localhost:8080/upload/file' вместо /upload/file

Комментарии:

1. Но когда я отправляю файл, spring сообщает, что текущий запрос не является запросом из нескольких частей… У вас есть какие-либо идеи?

2. Взгляните bezkoder.com/angular-spring-boot-file-upload

3. Загружено успешно, теперь все круто, я удалил тип содержимого. Большое спасибо за ваше время. Мы не будем следовать безкодеру, наши коды в любом случае похожи…