nhttp3-client

Built-in HTTP/3 client for testing any nhttp3 server. Supports GET, POST, verbose output, and timing.

Basic Usage

# GET
cargo run -p nhttp3-server --bin nhttp3-client -- https://localhost:4433/

# POST with body
cargo run -p nhttp3-server --bin nhttp3-client -- \
  -X POST -d '{"hello":"world"}' https://localhost:4433/echo

# Verbose (headers + timing)
cargo run -p nhttp3-server --bin nhttp3-client -- -v https://localhost:4433/health

Verbose Output

* Connecting to localhost:4433 over QUIC...
* QUIC connected in 3.6ms
* Remote: 127.0.0.1:4433
> GET /health HTTP/3
>
< HTTP/3 200 OK
< content-type: application/json
< server: nhttp3
<
{"status":"ok"}

* Connect:  3.6ms
* Response: 4.7ms
* Total:    5.1ms
* Bytes:    15

Flags

FlagDescriptionExample
-vVerbose — show headers, timing-v https://...
-X METHODHTTP method-X POST
-d BODYRequest body-d '{"k":"v"}'

Works with any server

The client speaks standard HTTP/3. It connects to:

Why not curl?
Many curl installs don't have HTTP/3. nhttp3-client always works because it's built from the same codebase.

Agent-friendly copy

Markdown versions for agents and LLMs: