HTTP 2.0 client & server implementation for Rust.
- Rust 99.4%
- Python 0.6%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
- Fixed atomic-waker, futures-core, futures-sink, tokio-util, tokio, bytes, http, tracing, fnv - Fixed slab, indexmap, watch dependencies to use git.sly.so - Fixed dev-dependencies: quickcheck, rand, hex, walkdir, serde, serde_json, tokio, env_logger, tokio-rustls, webpki-roots |
||
| benches | ||
| examples | ||
| fixtures/hpack | ||
| fuzz | ||
| src | ||
| tests | ||
| util | ||
| .gitignore | ||
| Cargo.toml | ||
| LICENSE | ||
| README.md | ||
H2
A Tokio aware, HTTP/2 client & server implementation for Rust.
More information about this crate can be found in the crate documentation.
Features
- Client and server HTTP/2 implementation.
- Implements the full HTTP/2 specification.
- Passes h2spec.
- Focus on performance and correctness.
- Built on Tokio.
Non goals
This crate is intended to only be an implementation of the HTTP/2 specification. It does not handle:
- Managing TCP connections
- HTTP 1.0 upgrade
- TLS
- Any feature not described by the HTTP/2 specification.
This crate is now used by hyper, which will provide all of these features.
Usage
To use h2, first add this to your Cargo.toml:
[dependencies]
h2 = "0.4"
Next, add this to your crate:
extern crate h2;
use h2::server::Connection;
fn main() {
// ...
}
FAQ
Is this an embedded Java SQL database engine?
No.