httpbuilder-ng multipart/form-data с большой частью application/zip
При попытке загрузить большой zip-файл через multipart/form-data с помощью реализации httpacheder-ng apache версии 0.16.1 я получаю
org.apache.http.ContentTooLongException: слишком длинная длина контента: 109370 в org.apache.http.entity.mime.MultipartFormEntity.getContent(MultipartFormEntity.java:103) в groovyx.net.http.ApacheEncoders.mcopart(ApacheEjava:74)
и это нормально, потому что zip довольно большой, и нет никаких причин для его перемещения по буферам и ByteArray [Input|Output] Stream, вопрос в том, как мне на самом деле отправить multipart в выходной поток соединения? я пытался настроить кодировщик, но ToServer предоставляет только один метод, который принимает InputStream, который на самом деле не работает для меня
Вот фрагмент того, что я делал
configure {
request.uri = 'https://anypoint.mulesoft.com'
request.contentType = JSON[0]
request.encoder(MULTIPART_FORMDATA[0], ApacheEncoders.&multipart)
}
.post {
request.uri.path = '/cloudhub/api/v2/applications'
request.headers['X-ANYPNT-ENV-ID'] = eid
request.contentType = MULTIPART_FORMDATA[0]
request.body = multipart {
part('appInfoJson', JSON[0], '{"domain":"myDomain"}')
part('autoStart', 'true')
part(
'file',
'myLargeZip.zip',
BINARY[0], // or 'application/zip'
new File('/parent', 'myLargeZip.zip')
)
}
}