0
現在,我正在使用Httppost將一些參數以xml形式發佈到服務器。當帖子發生時,下載geotiff或.tif文件。我已經成功地將文檔發佈到服務器,併成功下載了該文件,只需將參數附加到url,但我似乎無法將這兩者結合起來。我必須使用post,因爲只使用URL會留下geotiff中的高程數據。Apache Httppost從服務器Java中檢索圖像
總之,我不確定如何同時發佈和檢索帖子的圖像。這是我迄今爲止......
// Get target URL
String strURL = POST;
// Get file to be posted
String strXMLFilename = XML_PATH;
File input = new File(strXMLFilename);
// Prepare HTTP post
HttpPost post = new HttpPost(strURL);
post.setEntity(new InputStreamEntity(
new FileInputStream(input), input.length()));
// Specify content type and encoding
post.setHeader(
"Content-type", "text/xml");
// Get HTTP client
HttpClient httpclient = new DefaultHttpClient();
//Locate file to store data in
FileEntity entity = new FileEntity(newTiffFile, ContentType.create("image/geotiff"));
post.setEntity(entity);
// Execute request
try {
System.out.println("Connecting to Metoc site...\n");
HttpResponse result = httpclient.execute(post);
我的印象是,該實體將包含結果圖像。任何幫助深表感謝!
你正在調用'post.setEntity'兩次,第二次覆蓋第一次調用(我認爲)。你想發送兩個到服務器?下載通常意味着從服務器讀取響應。 – 2013-02-19 20:43:38
嗯,實際上可能是問題的一部分,因爲我的代碼是從響應中讀取的,但也許問題出在實體中。我正在閱讀一些使我認爲該實體是我下載的文檔。它必須是添加到帖子中的內容。 – jhusk2 2013-02-19 22:23:10
實體是請求的一部分,它是*發送* *到服務器。如果您想從服務器讀取數據,請從響應中讀取數據。 – 2013-02-20 08:25:25