public class HttpClientTest {
public static void main(String[] args) {
HttpClient httpClient = new HttpClient();
GetMethod getMethod = new GetMethod("http://www.sina.com.cn");
getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER,
new DefaultHttpMethodRetryHandler());
try {
int statusCode = httpClient.executeMethod(getMethod);
System.out.println("charset-->" + getMethod.getResponseCharSet());
// Header head = getMethod.getResponseHeader("Content-Type");
// System.out.println(head.getValue());
Header[] headers=getMethod.getResponseHeaders();
for (Header header : headers) {
System.out.println(header.getName()+" "+header.getValue());
}
if (statusCode != HttpStatus.SC_OK) {
System.err.println("Method failed: "
+ getMethod.getStatusLine());
}
//适合小数据量的网站
// byte[] responseBody = getMethod.getResponseBody();
// System.out.println(new String(responseBody));
//适合大数据量网站
InputStream in = getMethod.getResponseBodyAsStream();
byte[] responseBodyByte = null;
if (in!=null)
{
byte[] tmp = new byte[4096];
int bytesRead = 0;
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
while((bytesRead = in.read(tmp))!=-1)
{
buffer.write(tmp,0,bytesRead);
}
responseBodyByte = buffer.toByteArray();
}
System.out.println(new String(responseBodyByte));
} catch (HttpException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
getMethod.releaseConnection();
}
}
}
分享到:
相关推荐
HttpClient GET请求
例如,一个简单的HttpClientUtil工具类可能包含如下方法: ```java public class HttpClientUtil { public static CloseableHttpResponse executeHttpGet(String url) throws IOException { // 创建HttpClient...
4. **执行请求**:通过HttpClient的`execute()`方法发送请求。 5. **处理响应**:获取`HttpResponse`对象,解析响应码和响应内容。 ### GET请求 GET请求用于从服务器获取资源,其使用方式比POST简单: 1. **创建...
httpclient get/post请求工具类(map参数封装),方便调用
1. GET方法:GET主要用于获取资源,它是幂等的,意味着多次执行同一个GET请求会得到相同的结果,不会改变服务器状态。GET请求的数据通过URL查询字符串传递,因此长度有限,并且在浏览器历史记录和缓存中可见。 2. ...
1. GET请求:HttpClient的get方法用于从服务器获取资源。例如,你可以这样发起一个GET请求: ```typescript import { HttpClient } from '@angular/common/http'; constructor(private http: HttpClient) {} get...
HttpClient是一个功能强大的HTTP客户端,支持多种HTTP协议版本,包括GET、POST等请求方法,以及重试、连接管理等功能。在处理中文字符时,由于编码不一致或者处理不当,往往会出现乱码现象。以下是一些关键的知识点...
httpclient的用法,发送get请求和post请求,设置header
在这个主题中,我们将深入理解HttpClient的使用方法,并探讨如何实现服务端和客户端的交互。 一、HttpClient的简单使用 1. 添加依赖 在Java项目中使用HttpClient,首先需要添加对应的依赖。对于Maven项目,可以在...
在这个场景中,我们关注的是如何使用HttpClient的HttpGet方法来传输JSON数据。HttpGet主要用于发起一个HTTP GET请求,通常用于从服务器获取资源,而JSON数据是互联网上常用的数据交换格式。 首先,让我们了解一下...
一个简单的易学的 基于HttpClient 4.3发送psot及get请求,返回数据,适合初学者,适合初学者
1. GET请求:HttpClientUtil中的GET方法通常会创建一个HttpGet对象,设置请求的URL,并通过HttpClient的execute方法发送请求。响应结果可以通过HttpEntity获取,然后解析成字符串或者特定的对象,例如JSON或XML。 2...
Apache HttpClient库提供了一种强大的方法来执行HTTP请求,无论是简单的GET请求还是复杂的带有表单参数的POST请求。本文将通过具体的代码示例,详细介绍如何使用Java HttpClient来发送这两种类型的请求。 #### 二、...
当使用GET方法时,请求参数通常被附加在URL后面,例如`http://example.com/api?param=value`。下面是一个使用HttpClient发送GET请求的例子: ```java import org.apache.http.HttpResponse; import org.apache....
- HttpClient是Apache的一个开源项目,提供了强大的HTTP协议处理能力,支持GET、POST、PUT等多种HTTP请求方法。 - HttpClient提供了一个基于连接池的连接管理器,可以有效地管理HTTP连接,提高性能和效率。 - 它...
接下来,我们来看如何使用HttpClient进行GET和POST操作。GET请求通常用于获取资源,而POST请求常用于提交数据。 1. **GET请求**: GET请求的基本流程是创建HttpClient对象,构建HttpGet对象,然后通过HttpClient...
首先,HttpClient允许我们构建复杂的HTTP请求,包括GET、POST以及其他HTTP方法。使用HttpClient调用URL的基本步骤包括创建HttpClient实例、构建HttpGet或HttpPost对象、设置请求头(如Content-Type、Authorization等...
在Android开发中,HTTPClient是常用的网络通信库,它提供了HTTP协议的支持,允许应用程序通过POST和GET方法向服务器传输数据。本项目中的四个知识点聚焦于HTTPClient的使用,特别是文件上传以及HTTP的基本请求方法。...