Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java httpclient获取和放置_Java_Httpclient - Fatal编程技术网

Java httpclient获取和放置

Java httpclient获取和放置,java,httpclient,Java,Httpclient,这是我想做的,需要一些帮助 我有一个源url和一个目标url。我想做的是将一个文件从源url复制到目标url,但我想避免在再次上载文件之前在系统上本地复制该文件 我们还必须得到内容长度,因为目标api需要它(它的自定义)。如果我使用HttpUrlConnection类,那么我就可以得到它……但是,在使用java.net实现get以外的任何功能时,可能会遇到一些问题。(源文件是巨大的图像/视频文件),因此我可以使用ApacheHttpClient 3.1。但我该怎么做呢 有什么想法吗 -Ash您尝

这是我想做的,需要一些帮助

我有一个源url和一个目标url。我想做的是将一个文件从源url复制到目标url,但我想避免在再次上载文件之前在系统上本地复制该文件

我们还必须得到内容长度,因为目标api需要它(它的自定义)。如果我使用HttpUrlConnection类,那么我就可以得到它……但是,在使用java.net实现get以外的任何功能时,可能会遇到一些问题。(源文件是巨大的图像/视频文件),因此我可以使用ApacheHttpClient 3.1。但我该怎么做呢

有什么想法吗


-Ash

您尝试过以下方法吗

  • 以流的形式获取get响应的主体
  • 并将其“管道”到PUT请求的主体中
看这个

编辑

您应该能够获得
get
with的响应大小(与
内容长度
标题相对应,如果提供)


然后,我建议您针对
PUT
方法查看以下选项之一:,。

您尝试过以下选项吗

  • 以流的形式获取get响应的主体
  • 并将其“管道”到PUT请求的主体中
看这个

编辑

您应该能够获得
get
with的响应大小(与
内容长度
标题相对应,如果提供)

然后,我建议您针对
PUT
方法查看以下选项之一:

我想避免复制该文件 上传前在我的系统上本地 再看一遍文件

你必须接受它,因为HTTP就是这样工作的。如果您想进行远程到远程传输,您可以使用HTTP以外的其他方式(尽管我不知道有哪种协议适合),或者在其中一个远程站点上远程执行一些软件来执行传输

我想避免复制该文件 上传前在我的系统上本地 再看一遍文件


你必须接受它,因为HTTP就是这样工作的。如果您想进行远程到远程传输,您可以使用HTTP以外的其他协议(尽管我不知道是否有适合的协议),或者在其中一个远程站点上远程执行一些软件来执行传输。

是的,但是如何从InputStream获取内容长度是=getMethod.getResponseBodyAsStream(); ? 我不想在本地下载该文件。。。有什么想法吗-是的,但是如何从InputStream获取内容长度是=getMethod.getResponseBodyAsStream()?我不想在本地下载该文件。。。有什么想法吗-灰烬