httpclient получить и положить - PullRequest
1 голос
/ 19 января 2010

вот что я хочу сделать, и мне нужна некоторая помощь.

У меня есть исходный URL и целевой URL.я хочу скопировать файл из исходного URL-адреса в целевой URL-адрес, но я хочу избежать копирования файла локально в моей системе перед повторной загрузкой файла.

Также необходимо иметь следующее:мы должны получить длину содержимого, потому что API-интерфейс назначения требует его (его пользовательский).Если я использую класс HttpUrlConnection, то я могу это получить .... но AFAIK есть некоторые проблемы в использовании java.net для чего-либо, кроме GET.(исходные файлы - огромные файлы изображений / видео), поэтому я могу использовать apache httpclient 3.1.Но как мне подойти к этому?

Есть мысли?

-Аш

Ответы [ 2 ]

1 голос
/ 19 января 2010

Вы пробовали следующее?

См. Этот учебник .

РЕДАКТИРОВАТЬ

Вы должны быть в состоянии получить размер ответа GET с GetMethod.getResponseContentLenght (что соответствует заголовку Content-Length, если имеется).

Затем я предлагаю вам взглянуть на один из следующих методов PUT: setRequestContentLenght , addContentLenghtRequestHeader , setContentChunked .

0 голосов
/ 20 января 2010

Я хочу избежать копирования файла локально в моей системе перед загрузкой файл снова

Ну, вам придется с этим смириться, потому что именно так работает HTTP. Если вы хотите выполнять удаленную передачу, вам нужно либо использовать что-то, кроме HTTP (хотя я не знаю какого-либо подходящего для этого протокола), либо удаленно запускать некоторое программное обеспечение на одном из удаленных сайтов, выполнить перевод.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...