HttpClient请求服务器图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HttpClient请求服务器图片相关的知识,希望对你有一定的参考价值。

我们先引入一个IO流相关的Jar包,

从apache下载

技术分享

下载后,jar包和源码如图:

技术分享

我们只需要将jar包引入项目:

技术分享

之后我们使用FileUtils这个类,其中有一个文件复制方法。

 

我们将请求的图片保存在本地磁盘

代码如下:

package com.zhi.httpClient3;

import java.io.File;
import java.io.InputStream;

import org.apache.commons.io.FileUtils;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;

public class Demo {
	public static void main(String[] args) throws Exception {
		CloseableHttpClient closeableHttpClient=HttpClients.createDefault(); //1、创建实例
		HttpGet httpGet=new HttpGet("http://static.bootcss.com/www/assets/img/codeguide.png?1505127079951"); //2、创建实例
		
		CloseableHttpResponse closeableHttpResponse=closeableHttpClient.execute(httpGet); //3、执行
		HttpEntity httpEntity=closeableHttpResponse.getEntity(); //4、获取实体
		
		if(httpEntity!=null){
			System.out.println("ContentType:"+httpEntity.getContentType().getValue());
			InputStream inputStream=httpEntity.getContent();
			FileUtils.copyToFile(inputStream, new File("D://xxx.png")); //将图片保存在本次磁盘D盘,命名为xxx.png
		}
			
		closeableHttpResponse.close();
		closeableHttpClient.close();
	}
}

  运行后,D盘里会增加一个图片文件。

同理,jpg和gif也可以进行抓取后保存在本地。

 

以上是关于HttpClient请求服务器图片的主要内容,如果未能解决你的问题,请参考以下文章

.Net Core 3.0后台使用httpclient请求网络网页和图片_使用Core3.0做一个简单的代理服务器

如何从 HttpClient 检索照片?

根据图片的url地址下载图片到本地保存代码片段

使用 HttpClient 上传图片

如何接收httpclient发送的请求

WebClient和HttpClient, 以及webapi上传图片