[][src]Crate hyper

hyper

hyper is a fast and correct HTTP implementation written in and for Rust.

Features

  • HTTP/1 and HTTP/2
  • Asynchronous design
  • Leading in performance
  • Tested and correct
  • Extensive production use
  • Client and Server APIs

If just starting out, check out the Guides first.

"Low-level"

hyper is a lower-level HTTP library, meant to be a building block for libaries and applications.

If looking for just a convenient HTTP client, consider the reqwest crate.

Optional Features

The following optional features are available:

  • runtime (enabled by default): Enables convenient integration with tokio, providing connectors and acceptors for TCP, and a default executor.
  • tcp (enabled by default): Enables convenient implementations over TCP (using tokio).
  • stream (enabled by default): Provides futures::Stream capabilities.

Re-exports

pub use crate::client::Client;
pub use crate::error::Error;
pub use crate::error::Result;
pub use crate::server::Server;

Modules

body

Streaming bodies for Requests and Responses

client

HTTP Client

error

Error and Result module.

header

HTTP header types

rt

Runtime components

server

HTTP Server

service

Asynchronous Services

upgrade

HTTP Upgrades

Structs

Body

A stream of Bytes, used when receiving bodies.

HeaderMap

A set of HTTP headers

Method

The Request Method (VERB)

Request

Represents an HTTP request.

Response

Represents an HTTP response

StatusCode

An HTTP status code (status-code in RFC 7230 et al.).

Uri

The URI component of a request.

Version

Represents a version of the HTTP spec.