A Tokio aware, HTTP/2 client & server implementation for Rust.
More information about this crate can be found in the crate documentation.
- Client and server HTTP/2 implementation.
- Implements the full HTTP/2 specification.
- Passes h2spec.
- Focus on performance and correctness.
- Built on Tokio.
This package focuses solely on implementing the HTTP/2 specification. It supports client-side processing based on the original h2 branch, including:
- Optional tracing
- Pseudo-header permutation for headers frame
- Experimental and permuted settings frame support
- Priority frame support (client-side only)
- Major multi-core concurrency boost for client and server
This crate is now used by wreq, which will provide all of these features.
To use http2
, first add this to your Cargo.toml
:
[dependencies]
http2 = "0.5"
Next, add this to your crate:
extern crate http2;
use http2::server::Connection;
fn main() {
// ...
}
The project is based on a fork of h2.