Play автономный клиент WS не может загружать многокомпонентные файлы без импорта основной библиотеки фреймворка - PullRequest
1 голос
/ 09 марта 2020

с использованием play-ws-standaloneplay-ws-standalone версии 2.1.2

Я использую автономный ws-клиент play для выполнения остальных вызовов в моем проекте Scala. В той части кода, где у меня есть проблема, я не импортирую jar core play framework (и не хочу, автономный клиент ws в этом не нуждается).

Что у меня есть проблема с отправкой почтового запроса с составным файлом. В соответствии с примером я должен использовать play.api. mvc .MultipartFormData.FilePart [Source [ByteString, Any]], который находится в ядре фреймворка Play (в отличие от всех других классов, относящихся к ws client, который можно найти в jar play-ws-standalone).

DefaultBodyWritables предоставляют только реализацию BodyWritable для загрузки одного файла: DefaultBodyWritables.writableOf_File, поэтому он не подходит для моей цели.

Я понимаю, что мог бы реализовать свой собственный BodyWritable для мультимедийных данных типа multipart / form-data, но не знаю, как заставить его работать. реализация MultiPartFormData в платформе Play довольно сложна. Любые советы по этому вопросу будут полезны.

TLDR;

Существуют ли причины, по которым FilePart нельзя отделить от среды Play? Есть ли какое-нибудь решение, которое избавило бы меня от импорта всей платформы в этом модуле (чего я бы действительно хотел избежать) для загрузки multipart / form-data с play-ws-standalone?

...