1. Обзор
Нашим приложениям часто приходится обрабатывать загрузку файлов через HTTP-запрос. Начиная с Spring 5, теперь мы можем сделать эти запросы реактивными.
Добавленная поддержка реактивного программирования позволяет нам работать неблокирующим
образом, используя небольшое количество потоков и противодавление .
В этой статье мы будем использовать WebClient
— неблокирующий реактивный HTTP-клиент — чтобы проиллюстрировать, как загрузить файл. WebClient
является частью библиотеки реактивного программирования под названием Project Reactor
. Мы рассмотрим два разных подхода к загрузке файла с помощью BodyInserter
.
2. Загрузка файла с помощью WebClient
Чтобы использовать WebClient
, нам нужно добавить в наш проект зависимость spring-boot-starter-webflux :