欢迎光临
我们一直在努力

HttpClient获取响应状态Status

HttpClient获取响应状态Status

我们HttpClient向服务器请求时,

正常情况 执行成功 返回200状态码,

不一定每次都会请求成功,

比如这个请求地址不存在 返回404

服务器内部报错 返回500

有些服务器有防采集,假如你频繁的采集数据,则返回403 拒绝你请求。

当然 我们是有办法的 后面会讲到用代理IP。

这个获取状态码,我们可以用 CloseableHttpResponse对象的getStatusLine().getStatusCode()

123456789101112131415161718192021222324package com.open1111.httpclient.chap02; 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;import org.apache.http.util.EntityUtils; public class Demo3 { public static void main(String[] args) throws Exception{CloseableHttpClient httpClient=HttpClients.createDefault(); // 创建httpClient实例HttpGet httpGet=new HttpGet("http://www.java1234.com"); // 创建httpget实例httpGet.setHeader("User-Agent""Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0"); // 设置请求头消息User-AgentCloseableHttpResponse response=httpClient.execute(httpGet); // 执行http get请求System.out.println("Status:"+response.getStatusLine().getStatusCode());HttpEntity entity=response.getEntity(); // 获取返回实体System.out.println("Content-Type:"+entity.getContentType().getValue());//System.out.println("网页内容:"+EntityUtils.toString(entity, "utf-8")); // 获取网页内容response.close(); // response关闭httpClient.close(); // httpClient关闭}}

运行输出:

Status:200

Content-Type:text/html;charset=UTF-8

假如换个页面 http://www.java1234.com/aaa.jsp

因为不存在,

所以返回 404

赞(0) 打赏
未经允许不得转载:柳叶飘 » HttpClient获取响应状态Status
分享到: 更多 (0)

大前端WP主题 更专业 更方便

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏