簡體   English   中英

使用Java中的REST POST調用下載文件

[英]Downloading a file using a REST POST call in java

我有一個REST服務,當通過POST調用以XML文件作為參數調用該文件時,該服務會返回文件。 我的目標是使用客戶端(Java類中的簡單httppost調用)訪問服務。 到目前為止,我正在做以下事情:

    DefaultHttpClient defaultHtppclient = new DefaultHttpClient();
    HttpPost postRequest = new HttpPost("resturl");
    StringEntity input = new StringEntity("input xml file ");
    input.setContentType("application/xml");
    postRequest.setEntity(input);
    HttpResponse response = defaultHtppclient.execute(postRequest);                           

使用以下命令轉換響應時,我正在獲取文件的內容:

String content = EntityUtils.toString(response.getEntity());

但是我正在努力從java類下載文件。 當我在Firefox HTTP資源測試中觸發URL時。 我得到的標題為:

Content-Disposition: attachment; filename = filenameFromserver
Content-Type: application/octet-stream

有什么辦法可以從客戶端下載文件嗎?

您正在進行的呼叫正在等待application / xml,服務器正在向您發送一個八位字節流。

您必須讀取發送給您的字節,並將它們寫到所需的文件中。 我建議四處搜索如何讀取八位位組流。

例如,看一下這篇文章:

從URLConnection讀取二進制文件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM