| ~~ ==================================================================== |
| ~~ Licensed to the Apache Software Foundation (ASF) under one |
| ~~ or more contributor license agreements. See the NOTICE file |
| ~~ distributed with this work for additional information |
| ~~ regarding copyright ownership. The ASF licenses this file |
| ~~ to you under the Apache License, Version 2.0 (the |
| ~~ "License"); you may not use this file except in compliance |
| ~~ with the License. You may obtain a copy of the License at |
| ~~ |
| ~~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~~ |
| ~~ Unless required by applicable law or agreed to in writing, |
| ~~ software distributed under the License is distributed on an |
| ~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| ~~ KIND, either express or implied. See the License for the |
| ~~ specific language governing permissions and limitations |
| ~~ under the License. |
| ~~ ==================================================================== |
| ~~ |
| ~~ This software consists of voluntary contributions made by many |
| ~~ individuals on behalf of the Apache Software Foundation. For more |
| ~~ information on the Apache Software Foundation, please see |
| ~~ <http://www.apache.org/>. |
| |
| ---------- |
| HttpComponents HttpClient Overview |
| ---------- |
| ---------- |
| ---------- |
| |
| HttpClient Overview |
| |
| The Hyper-Text Transfer Protocol (HTTP) is perhaps the most significant protocol used on the |
| Internet today. Web services, network-enabled appliances and the growth of network computing |
| continue to expand the role of the HTTP protocol beyond user-driven web browsers, while |
| increasing the number of applications that require HTTP support. |
| |
| Although the java.net package provides basic functionality for accessing resources via HTTP, it |
| doesn't provide the full flexibility or functionality needed by many applications. HttpClient |
| seeks to fill this void by providing an efficient, up-to-date, and feature-rich package |
| implementing the client side of the most recent HTTP standards and recommendations. |
| |
| Designed for extension while providing robust support for the base HTTP protocol, HttpClient |
| may be of interest to anyone building HTTP-aware client applications such as web browsers, web |
| service clients, or systems that leverage or extend the HTTP protocol for distributed |
| communication. |
| |
| {Documentation} |
| |
| [[1]] Examples demonstrating some common as well as more complex use cases |
| |
| * {{{./examples.html}HttpClient (classic APIs)}} |
| |
| * {{{./examples-async.html}HttpClient (async APIs)}} |
| |
| * {{{./examples-reactive.html}HttpClient (reactive APIs)}} |
| |
| [] |
| |
| [[1]] Javadocs |
| |
| * {{{./current/httpclient5/apidocs/}HttpClient}} |
| |
| * {{{./current/httpclient5-fluent/apidocs/}HC Fluent}} |
| |
| * {{{./current/httpclient5-cache/apidocs/}HttpClient Cache}} |
| |
| * {{{./current/httpclient5-win/apidocs/}HttpClient Windows extensions}} |
| |
| [] |
| |
| [[1]] API compatibility reports |
| |
| * {{{./current/httpclient5/clirr-report.html}HttpClient}} |
| |
| * {{{./current/httpclient5-fluent/clirr-report.html}HC Fluent}} |
| |
| * {{{./current/httpclient5-cache/clirr-report.html}HttpClient Cache}} |
| |
| * {{{./current/httpclient5-win/clirr-report.html}HttpClient Windows extensions}} |
| |
| {Standards Compliance} |
| |
| HttpClient strives to conform to the following specifications endorsed by the Internet |
| Engineering Task Force (IETF) and the internet at large: |
| |
| * {{{http://tools.ietf.org/html/rfc7230}RFC 7230}} - Hypertext Transfer Protocol (HTTP/1.1): |
| Message Syntax and Routing |
| |
| * {{{http://tools.ietf.org/html/rfc7231}RFC 7231}} - Hypertext Transfer Protocol (HTTP/1.1): |
| Semantics and Content |
| |
| * {{{http://tools.ietf.org/html/rfc7235}RFC 7235}} - Hypertext Transfer Protocol (HTTP/1.1): |
| Authentication |
| |
| * {{{http://tools.ietf.org/html/rfc1945}RFC 1945}} - Hypertext Transfer Protocol -- HTTP/1.0 |
| |
| * {{{http://tools.ietf.org/html/rfc2817}RFC 2817}} - Upgrading to TLS Within HTTP/1.1 |
| |
| * {{{http://tools.ietf.org/html/rfc2818}RFC 2818}} - HTTP Over TLS |
| |
| * {{{http://tools.ietf.org/html/rfc6265}RFC 6265}} - HTTP State Management Mechanism (Cookies) |
| |
| * {{{http://tools.ietf.org/html/rfc3986}RFC 3986}} - Uniform Resource Identifiers (URI): Generic Syntax |
| |