- Adds `Body::on_upgrade()` that returns an `OnUpgrade` future.
- Adds `hyper::upgrade` module containing types for dealing with
upgrades.
- Adds `server::conn::Connection::with_upgrades()` method to enable
these upgrades when using lower-level API (because of a missing
`Send` bound on the transport generic).
- Client connections are automatically enabled.
- Optimizes request parsing, to make up for extra work to look for
upgrade requests.
- Returns a smaller `DecodedLength` type instead of the fatter
`Decoder`, which should also allow a couple fewer branches.
- Removes the `Decode::Ignore` wrapper enum, and instead ignoring
1xx responses is handled directly in the response parsing code.
Ref #1563
Closes #1395
Examples of using hyper
Run examples with cargo run --example example_name.
Available examples
-
client- A simple CLI http client that request the url passed in parameters and outputs the response content and details to the stdout, reading content chunk-by-chunk. -
echo- An echo server that copies POST request's content to the response content. -
hello- A simple server that returns "Hello World!" using a closure wrapped to provide aService. -
multi_server- A server that listens to two different ports, a differentServiceby port, spawning twofutures. -
params- A webserver that accept a form, with a name and a number, checks the parameters are presents and validates the input. -
send_file- A server that sends back content of files using tokio_fs to read the files asynchronously. -
upgrades- A server and client demonstrating how to do HTTP upgrades (such as WebSockets orCONNECTtunneling). -
web_api- A server consisting in a service that returns incoming POST request's content in the response in uppercase and a service that call that call the first service and includes the first service response in its own response.