~~ ==================================================================== ~~ 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 ~~ . ---------- HttpComponents HttpCore Overview ---------- ---------- ---------- HttpCore Overview HttpCore is a set of low level HTTP transport components that can be used to build custom client and server side HTTP services with a minimal footprint. HttpCore supports two I/O models: blocking I/O model based on the classic Java I/O and non-blocking, event driven I/O model based on Java NIO. {Documentation} [[1]] Some examples of HttpCore components in action can be found {{{./examples.html}here}} [[1]] Project reports * {{{./httpcore5/project-reports.html}HttpCore HTTP/1.1}} * {{{./httpcore5-h2/project-reports.html}HttpCore HTTP/2}} {Standards Compliance} HttpCore components strive to conform to the following specifications endorsed by the Internet Engineering Task Force (IETF) and the internet at large: * {{{https://tools.ietf.org/html/rfc7540}RFC 7540}} - Hypertext Transfer Protocol Version 2 (HTTP/2) * {{{https://tools.ietf.org/html/rfc7541}RFC 7541}} - HPACK: Header Compression for HTTP/2 * {{{https://tools.ietf.org/html/rfc7230}RFC 7230}} - Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing * {{{https://tools.ietf.org/html/rfc7231}RFC 7231}} - Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content * {{{https://tools.ietf.org/html/rfc1945}RFC 1945}} - Hypertext Transfer Protocol -- HTTP/1.0