📝 Apache HttpClient教程

17篇技术文档
  Apache HttpClient-概述

📅  最后修改于: 2020-11-18 08:26:20        🧑  作者: Mango

超文本传输协议(HTTP)是分布式,协作式超媒体信息系统的应用程序级协议。自1990年以来,这就是互联网(即Internet)数据通信的基础。HTTP是一种通用的无状态协议,可以将其用于其他目的,也可以使用其请求方法,错误代码和标头的扩展。基本上,HTTP是基于TCP / IP的通信协议,用于在万维网上传递数据(HTML文件,图像文件,查询结果等)。默认端口是TCP 80,但也可以使用其他端口。它...

  Apache HttpClient-Http获取请求

📅  最后修改于: 2020-11-18 08:26:43        🧑  作者: Mango

GET方法用于使用给定URI从给定服务器检索信息。使用GET的请求应仅检索数据,而对数据没有其他影响。HttpClient API提供了一个名为HttpGet的类,该类表示get请求方法。请按照下面给出的步骤使用HttpClient库发送获取请求第1步-创建HttpClient对象HttpClients类的createDefault()方法返回一个CloseableHttpClient对象,该对象...

  Apache HttpClient-Http发布请求

📅  最后修改于: 2020-11-18 08:27:04        🧑  作者: Mango

POST请求用于将数据发送到服务器;例如使用HTML表单的客户信息,文件上传等。HttpClient API提供了一个名为HttpPost的类,该类表示POST请求。请按照下面给出的步骤使用HttpClient库发送HTTP POST请求。第1步-创建HttpClient对象HttpClients类的createDefault()方法返回CloseableHttpClient类的对象,该对象是Ht...

  Apache HttpClient-响应处理程序

📅  最后修改于: 2020-11-18 08:27:28        🧑  作者: Mango

建议使用响应处理程序处理HTTP响应。在本章中,我们将讨论如何创建响应处理程序以及如何使用它们来处理响应。如果使用响应处理程序,则所有HTTP连接都会自动释放。创建响应处理程序HttpClient API在包org.apache.http.client中提供了一个称为ResponseHandler的接口。为了创建响应处理程序,请实现此接口并覆盖其handleResponse()方法。每个响应都有一...

  Apache HttpClient-关闭连接

📅  最后修改于: 2020-11-18 08:27:52        🧑  作者: Mango

如果要手动处理HTTP响应而不是使用响应处理程序,则需要自己关闭所有http连接。本章介绍如何手动关闭连接。在手动关闭HTTP连接时,请遵循以下步骤-第1步-创建HttpClient对象HttpClients类的createDefault()方法返回CloseableHttpClient类的对象,该对象是HttpClient接口的基本实现。使用此方法,创建一个HttpClient对象,如下所示-第...

  Apache HttpClient-中止请求

📅  最后修改于: 2020-11-18 08:28:11        🧑  作者: Mango

您可以使用abort()方法中止当前的HTTP请求,即,在调用此方法之后,对特定请求,将中止执行。如果在执行一次后调用此方法,则该执行的响应将不受影响,并且后续执行将中止。例如果您观察以下示例,则我们创建了一个HttpGet请求,并使用getMethod()打印使用的请求格式。然后,我们对相同的请求执行了另一次执行。再次使用第一次执行打印状态行。最后,打印第二次执行的状态行。如前所述,将打印第一个...

  Apache HttpClient-拦截器

📅  最后修改于: 2020-11-18 08:28:45        🧑  作者: Mango

拦截器是有助于阻止或更改请求或响应的拦截器。协议拦截器通常对特定的标头或一组相关的标头起作用。 HttpClient库提供对拦截器的支持。请求拦截器HttpRequestInterceptor接口表示请求拦截器。该接口包含一个称为过程的方法,您需要在其中编写代码块以拦截请求。在客户端,此方法在将请求发送到服务器之前先对其进行验证/处理,而在服务器端,在评估请求的主体之前执行此方法。创建请求拦截器您...

  Apache HttpClient-用户身份验证

📅  最后修改于: 2020-11-18 08:29:10        🧑  作者: Mango

使用HttpClient,您可以连接到需要用户名和密码的网站。本章介绍如何针对要求用户名和密码的站点执行客户端请求。第1步-创建CredentialsProvider对象CredentialsProvider接口维护一个集合来保存用户登录凭据。您可以通过实例化BasicCredentialsProvider类(此接口的默认实现)来创建其对象。第2步-设置凭据您可以使用setCredentials(...

  Apache HttpClient-使用代理

📅  最后修改于: 2020-11-18 08:29:35        🧑  作者: Mango

代理服务器是客户端和Internet之间的中间服务器。代理服务器提供以下基本功能-防火墙和网络数据过滤网络连接共享资料快取使用HttpClient库,您可以使用代理发送HTTP请求。请按照下面给出的步骤-第1步-创建HttpHost对象通过将代表代理主机名(您需要从中发送请求)的字符串参数传递给其构造函数,实例化org.apache.http包的HttpHost类。以相同的方式,创建另一个Http...

  Apache HttpClient-代理身份验证

📅  最后修改于: 2020-11-18 08:30:03        🧑  作者: Mango

在本章中,我们将使用一个示例,学习如何创建一个使用用户名和密码进行身份验证的HttpRequest,并将其通过代理隧道传输到目标主机。第1步-创建CredentialsProvider对象CredentialsProvider接口维护一个集合来保存用户登录凭据。您可以通过实例化BasicCredentialsProvider类(此接口的默认实现)来创建其对象。第2步-设置凭据您可以使用setCre...

  Apache HttpClient-基于表单的登录

📅  最后修改于: 2020-11-18 08:30:32        🧑  作者: Mango

使用HttpClient库,您可以发送请求或通过传递参数登录到表单。请按照下面给出的步骤登录表单。第1步-创建HttpClient对象HttpClients类的createDefault()方法返回CloseableHttpClient类的对象,该对象是HttpClient接口的基本实现。使用此方法,创建HttpClient对象-第2步-创建一个RequestBuilder对象RequestBui...

  Apache HttpClient-Cookies管理

📅  最后修改于: 2020-11-18 08:30:56        🧑  作者: Mango

Cookies是存储在客户端计算机上的文本文件,它们被保留以用于各种信息跟踪目的。HttpClient提供对cookie的支持,您可以创建和管理cookie。创建一个cookie请按照下面给出的步骤使用HttpClient库创建cookie。第1步-创建Cookiestore对象CookieStore接口表示Cookie对象的抽象存储。您可以通过实例化BasicCookieStore类(此接口的默...

  Apache HttpClient-多个线程

📅  最后修改于: 2020-11-18 08:31:26        🧑  作者: Mango

多线程程序包含两个或多个可以同时运行的部分,并且每个部分可以同时处理不同的任务,从而充分利用可用资源。您可以通过编写多线程HttpClient程序来执行来自多个线程的请求。如果要连续从线程执行多个客户端请求,则需要创建一个ClientConnectionPoolManager。它维护一个HttpClientConnections池,并处理来自线程的多个请求。连接管理器根据路由池化连接。如果管理器具...

  Apache HttpClient-自定义SSL上下文

📅  最后修改于: 2020-11-18 08:31:56        🧑  作者: Mango

使用安全套接字层,可以在客户端和服务器之间建立安全连接。它有助于保护敏感信息,例如信用卡号,用户名,密码,密码等。通过使用HttpClient库创建自己的SSL上下文,可以使连接更安全。请按照下面给出的步骤使用HttpClient库自定义SSLContext-第1步-创建SSLContextBuilder对象SSLContextBuilder是SSLContext对象的构建器。使用SSLConte...

  Apache HttpClient-分段上传

📅  最后修改于: 2020-11-18 08:32:28        🧑  作者: Mango

使用HttpClient,我们可以执行分段上传,即,可以在较小的部分上传较大的对象。在本章中,我们将通过上传一个简单的文本文件来演示HTTP客户端中的分段上传。通常,任何分段上传都包含三个部分。启动上传上载对象部分完成分段上传对于使用HttpClient的分段上传,我们需要遵循以下步骤-创建一个多部分生成器。向其中添加所需的部件。完成构建并获得一个包含多部分的HttpEntity。通过设置上述多部...