Перенос файла с помощью okhttp со 2 URLJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Перенос файла с помощью okhttp со 2 URL

Сообщение Anonymous »

У меня есть два заранее назначенных URL-адреса: (GET И PUT)
Как я могу передать файл, не загружая весь файл в память?
Мне нужно пройти через прокси-сервер для получения данных с помощью GET presignedUrl.
Мой подход, но я получаю сообщение об ошибке: «закрыто»
OkHttpClient.Builder clientBuilder = new OkHttpClient.Builder();

OkHttpClient getProxyClient = clientBuilder
.proxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("url.com", 443)))
.connectTimeout(5, TimeUnit.MINUTES)
.readTimeout(5, TimeUnit.MINUTES)
.writeTimeout(5, TimeUnit.MINUTES)
.build();

OkHttpClient putProxyClient = new OkHttpClient.Builder()
.connectTimeout(5, TimeUnit.MINUTES)
.readTimeout(5, TimeUnit.MINUTES)
.writeTimeout(5, TimeUnit.MINUTES)
.build();

Request requestGet = new Request.Builder()
.url(getPresignedUrl)
.build();

try {
Response responseGet = getProxyClient.newCall(requestGet).execute();

RequestBody requestPutBody = new RequestBody() {
@Nullable
@Override
public MediaType contentType() {
return MediaType.parse("application/octet-stream");
}

@Override
public void writeTo(@NotNull BufferedSink bufferedSink) throws IOException {
try (InputStream inputStream = responseGet.body().byteStream()) {
IOUtils.copyLarge(inputStream, bufferedSink.outputStream());
}
}
};

Request requestPut = new Request.Builder()
.url(put)
.put(requestPutBody)
.build();

Response responsePut = putProxyClient.newCall(requestPut).execute();
catch (IOException e) {
log.error("Erreur lors de la requête PUT : " + e.getMessage());
}


Подробнее здесь: https://stackoverflow.com/questions/792 ... from-2-url
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»