Mirror of Apache HttpClient

Clone this repo:
  1. 0bd4895 Add a model and parser for the RFC 9209 Proxy-Status response field by Arturo Bernal · 3 days ago master
  2. 83386f2 RFC 9211: optional Cache-Status response header by Arturo Bernal · 10 days ago
  3. 6ed50d9 treat malformed delta-seconds as absent in deltaSeconds by Javid Khan · 5 days ago
  4. 8b901f8 Moved timeout and stale connection related integration tests into separate groups to be executed manually during release preparation due to those tests failing intermittently in CI by Oleg Kalnichevski · 5 days ago
  5. 3b2aeb1 Header parsing optimization in cookie, authentication and caching protocol code by Oleg Kalnichevski · 6 days ago

Apache HttpComponents Client

Welcome to the HttpClient component of the Apache HttpComponents project.

GitHub Actions Status Maven Central License

Building Instructions

For building from source instructions please refer to BUILDING.txt.

Dependencies

HttpClient main module requires Java 8 compatible runtime and depends on the following external libraries:

Other dependencies are optional.

(for detailed information on external dependencies please see pom.xml)

Protocol conformance

  • RFC 9110 - HTTP Semantics
  • RFC 9111 - HTTP Caching
  • RFC 9112 - Hypertext Transfer Protocol Version 1.1 (HTTP/1.1)
  • RFC 9113 - Hypertext Transfer Protocol Version 2 (HTTP/2)
  • RFC 7541 - HPACK: Header Compression for HTTP/2
  • RFC 1945 - Hypertext Transfer Protocol -- HTTP/1.0
  • RFC 3986 - Uniform Resource Identifier (URI): Generic Syntax
  • RFC 6265 - HTTP State Management Mechanism (Cookies)
  • RFC 7616 - HTTP Digest Access Authentication
  • RFC 7617 - HTTP ‘Basic’ Authentication Scheme
  • RFC 5861 - HTTP Cache-Control Extensions for Stale Content
  • RFC 2817 - Upgrading to TLS Within HTTP/1.1
  • RFC 9218 - Extensible Prioritization Scheme for HTTP
  • RFC 7804 - Salted Challenge Response HTTP Authentication Mechanism
  • RFC 10008 - The HTTP QUERY Method
  • RFC 6455 - The WebSocket Protocol
  • RFC 7692 - Compression Extensions for WebSocket (permessage-deflate)
  • RFC 8441 - Bootstrapping WebSockets with HTTP/2

Licensing

Apache HttpComponents Client is licensed under the Apache License 2.0. See the files LICENSE.txt and NOTICE.txt for more information.

Contact

Cryptographic Software Notice

This distribution may include software that has been designed for use with cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See https://www.wassenaar.org/ for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

The following provides more details on the included software that may be subject to export controls on cryptographic software:

Apache HttpComponents Client interfaces with the Java Secure Socket Extension (JSSE) API to provide

  • HTTPS support

Apache HttpComponents Client does not include any implementation of JSSE.