2010-01-19 85 views
1

這裏是我想要做的,需要一些幫助。httpclient get和put

我有一個源網址和目標網址。我想要做的是從源URL複製文件到目標網址,但我想避免再次上傳文件之前在本地系統上覆制文件。

另外必須要有的是,我們應該得到內容長度,因爲目標api需要它(它的自定義)。如果我使用HttpUrlConnection類,那麼我可以得到....但AFAIK在使用java.net除GET以外的任何其他問題。 (源文件是巨大的圖像/視頻文件),所以我可以使用Apache httpclient 3.1。但我如何處理這個問題?

有什麼想法?

-Ash

回答

1

您是否嘗試過以下方法?

看到這個tutorial

編輯

你應該能夠GetMethod.getResponseContentLenght得到GET的響應大小(對應於Content-Length頭,如果有的話)。

那麼我建議你看下面的方法PUT方法:setRequestContentLenght,addContentLenghtRequestHeader,setContentChunked

+0

是的,但我如何從 獲得內容長度InputStream is = getMethod.getResponseBodyAsStream(); ? 我不想在本地下載文件... 任何想法? -Ash – ashchawla 2010-01-20 05:21:59

0

我想避免再次

上傳 文件那麼你將不得不忍受它在我的系統上覆制文件 本地,因爲這是如何工作的HTTP。如果你想進行遠程到遠程的傳輸,你要麼使用HTTP以外的東西(儘管我不知道任何適合這種協議的協議),或者遠程執行一個遠程站點上的某些軟件執行轉移。