Skip to content

Commit

Permalink
add section for protocol combinations and http/3 support note
Browse files Browse the repository at this point in the history
  • Loading branch information
Ousret committed Apr 24, 2024
1 parent eb93eab commit 4ae49f1
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,13 @@ $ http --version

Note that on your machine, the version name will have the `.dev0` suffix.

### HTTP/3 support

Support for HTTP/3 is available by default if both your interpreter and architecture are served by `qh3` published pre-built wheels.
The underlying library **Niquests** does not enforce its installation in order to avoid friction for most users.

See https://urllib3future.readthedocs.io/en/latest/user-guide.html#http-2-and-http-3-support to learn more.

## Usage

Hello World:
Expand Down Expand Up @@ -1884,6 +1891,21 @@ The remote server yield its support for HTTP/3 in the Alt-Svc header, if present
the successive requests via HTTP/3. You may use that argument in case the remote peer does not support
either HTTP/1.1 or HTTP/2.
## Protocol combinations
Following `Force HTTP/3` and `Disable HTTP/2, or HTTP/3`, you may find a summary on how to make HTTPie negotiate a
specific protocol.
| Argument(s) | Enabled protocol(s) |
|-----------------------------------|---------------------|
| `--disable-http2` | HTTP/1.1 or HTTP/3 |
| `--disable-http2 --disable-http3` | HTTP/1.1 |
| `--disable-http3` | HTTP/1.1 or HTTP/2 |
| `--http3` | HTTP/3 |
You cannot enforce HTTP/2 without prior knowledge nor can you negotiate it without TLS and ALPN.
Also, you may not disable HTTP/1.1 as it is ultimately used as a fallback in case HTTP/2 and HTTP/3 are not supported.
## Custom DNS resolver
### Using DNS url
Expand Down

0 comments on commit 4ae49f1

Please sign in to comment.