打印获取的页面会出现乱码–有待改进
import java.io.IOException;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.junit.Test;
public class HttpGetTest {
@Test
public void getHtml() {
// 创建httpClientBulider 用于创建closeableHttpClient
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
// 创建CloseableHttpClient
//或者使用这个方式HttpClients.createDefault();
CloseableHttpClient client = httpClientBuilder.build();
// 创建get方法
HttpGet get = new HttpGet("http://weibo.com");
System.out.println("requestLine: " + get.getRequestLine());
// 执行get
try {
// 1.通过Client执行get,获取response
HttpResponse response = client.execute(get);
// 查看响应
System.out.println("status:" + response.getStatusLine());
// 2.获取ENITY :通过返回信息responseh获取httpEnity实体
HttpEntity enity = response.getEntity();
// 3.查看响应实体是否为空,不为空那么打印编码信息和实体内容
if (enity != null) {
System.out.println("contentEncoding : " +enity.getContentEncoding());
System.out.println("contentLength : " + enity.getContentLength());
System.out.println("contentType : " + enity.getContentType());
System.out.println("content : " + enity.getContent().toString());
//System.out.println(EntityUtils.toString(enity));
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
//释放资源
client.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}