You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Make it possible to [unset](https://httpie.io/docs/cli/default-request-headers) the `User-Agent`, `Accept-Encoding`, and `Host` request headers. ([#1502](https://github.com/httpie/cli/issues/1502))
- Make it possible to [unset](https://httpie.io/docs/cli/default-request-headers) the `User-Agent`, and `Accept-Encoding` headers. ([#1502](https://github.com/httpie/cli/issues/1502))
9
+
- Dependency on requests was changed in favor of compatible niquests. ([#1531](https://github.com/httpie/cli/pull/1531))
10
+
- Added support for HTTP/2, and HTTP/3 protocols. ([#523](https://github.com/httpie/cli/issues/523)) ([#692](https://github.com/httpie/cli/issues/692)) ([#1531](https://github.com/httpie/cli/pull/1531))
11
+
- Added request metadata for the TLS certificate, negotiated version with cipher, and his revocation status and the remote peer IP address. ([#1495](https://github.com/httpie/cli/issues/1495)) ([#1023](https://github.com/httpie/cli/issues/1023)) ([#826](https://github.com/httpie/cli/issues/826)) ([#1531](https://github.com/httpie/cli/pull/1531))
12
+
- Added support to load the operating system trust store for the peer certificate validation. ([#480](https://github.com/httpie/cli/issues/480)) ([#1531](https://github.com/httpie/cli/pull/1531))
13
+
- Added detailed timings in response metadata with DNS resolution, established, TLS handshake, and request sending delays. ([#1023](https://github.com/httpie/cli/issues/1023)) ([#1531](https://github.com/httpie/cli/pull/1531))
14
+
- Added support for using alternative DNS resolver using `--resolver`. DNS over HTTPS, DNS over TLS, DNS over QUIC, and DNS over UDP are accepted. ([#99](https://github.com/httpie/cli/issues/99)) ([#1531](https://github.com/httpie/cli/pull/1531))
15
+
- Added support for binding to a specific network adapter with `--interface`. ([#1422](https://github.com/httpie/cli/issues/1422)) ([#1531](https://github.com/httpie/cli/pull/1531))
16
+
- Added support for forcing either IPv4 or IPv6 to reach the remote HTTP server with `-6` or `-4`. ([#94](https://github.com/httpie/cli/issues/94)) ([#1531](https://github.com/httpie/cli/pull/1531))
17
+
- Removed support for pyopenssl. ([#1531](https://github.com/httpie/cli/pull/1531))
@@ -1592,27 +1592,49 @@ $ http --print=Hh PUT pie.dev/put hello=world
1592
1592
The response metadata section currently includes the total time elapsed. It’s the number of seconds between opening the network connection and downloading the last byte of response the body.
1593
1593
1594
1594
1595
-
To _only_ show the response metadata, use `--meta, -m` (analogically to `--headers, -h` and `--body, -b`):
1595
+
To _only_ show the request, and response metadata, use `--meta, -m` (analogically to `--headers, -h` and `--body, -b`):
1596
1596
1597
1597
```bash
1598
1598
$ http --meta pie.dev/delay/1
1599
1599
```
1600
1600
1601
1601
```console
1602
-
Elapsed time: 1.099171542s
1602
+
Connected to: 2a06:98c1:3120::2 port 443
1603
+
Connection secured using: TLSv1.3 with AES-256-GCM-SHA384
1604
+
Server certificate: commonName="pie.dev"; DNS="*.pie.dev"; DNS="pie.dev"
The [extra verbose `-vv` output](#extra-verbose-output) includes the meta section by default. You can also show it in combination with other parts of the exchange via [`--print=m`](#what-parts-of-the-http-exchange-should-be-printed). For example, here we print it together with the response headers:
1606
1617
1607
1618
```bash
1608
-
$ http --print=hm pie.dev/get
1619
+
$ https --print=hm pie.dev/get
1609
1620
```
1610
1621
1611
1622
```http
1612
-
HTTP/1.1 200 OK
1623
+
Connected to: 2a06:98c1:3120::2 port 443
1624
+
Connection secured using: TLSv1.3 with AES-256-GCM-SHA384
1625
+
Server certificate: commonName="pie.dev"; DNS="*.pie.dev"; DNS="pie.dev"
To know more about DNS url and supported protocols, visit [Niquests documentation](https://niquests.readthedocs.io/en/stable/user/quickstart.html#dns-resolution).
1895
+
1896
+
## Attach to a specific network adapter
1897
+
1898
+
In order to bind emitted request from a specific network adapter you can use the `--interface` flag.
1899
+
1900
+
```bash
1901
+
$ https --interface 172.17.0.1 pie.dev/get
1902
+
```
1903
+
1904
+
## Enforcing IPv4 or IPv6
1905
+
1906
+
Since HTTPie 4, you may pass the flags `--ipv4, -4` or `--ipv6, -6` to enforce connecting to an IPv4 or IPv6 address.
1907
+
1908
+
```bash
1909
+
$ https -4 pie.dev/get
1910
+
```
1911
+
1836
1912
## Compressed request body
1837
1913
1838
1914
You can use the `--compress, -x` flag to instruct HTTPie to use `Content-Encoding: deflate` and compress the request data:
@@ -2556,7 +2632,7 @@ HTTPie has the following community channels:
2556
2632
2557
2633
Under the hood, HTTPie uses these two amazing libraries:
2558
2634
2559
-
- [Requests](https://requests.readthedocs.io/en/latest/) — Python HTTP library for humans
2635
+
- [Niquests](https://niquests.readthedocs.io/en/latest/) — Python HTTP library for humans
0 commit comments