在 java 中使用 REST POST 调用下载文件



我有一个REST服务,当通过以XML文件作为参数的POST调用调用文件时,它会返回一个文件。我的目标是使用客户端访问服务(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类下载文件。当我在火狐 HTTP 资源测试中触发 URL 时。我得到的标题是:

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

有没有办法从客户端下载这样的文件?

您正在进行的调用需要应用程序/xml,服务器正在向您发送八位字节流。

您必须读取它发送给您的字节,并将它们写出到您想要的文件中。 我建议四处搜索如何在八位字节流中阅读。

有关示例,请查看这篇文章:

从 URL 读取二进制文件通信

相关内容

  • 没有找到相关文章

最新更新