Crate salvo::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 libraries and applications.

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

Optional Features

hyper uses a set of feature flags to reduce the amount of compiled code. It is possible to just enable certain features over others. By default, hyper does not enable any features but allows one to enable a subset for their use case. Below is a list of the available feature flags. You may also notice above each function, struct and trait there is listed one or more feature flags that are required for that item to be used.

If you are new to hyper it is possible to enable the full feature flag which will enable all public APIs. Beware though that this will pull in many extra dependencies that you may not need.

The following optional features are available:

  • http1: Enables HTTP/1 support.
  • http2: Enables HTTP/2 support.
  • client: Enables the HTTP client.
  • server: Enables the HTTP server.
  • runtime: Enables convenient integration with tokio, providing connectors and acceptors for TCP, and a default executor.
  • tcp: Enables convenient implementations over TCP (using tokio).
  • stream: Provides futures::Stream capabilities.

Modules

body

Streaming bodies for Requests and Responses

client

HTTP Client

http

A general purpose library of common HTTP types

rt

Runtime components

server

HTTP Server

service

Asynchronous Services

upgrade

HTTP Upgrades

Structs

Body

A stream of Bytes, used when receiving bodies.

Client

A Client to make outgoing HTTP requests.

Error

Represents errors that can occur handling HTTP streams.

HeaderMap

A set of HTTP headers

Method

The Request Method (VERB)

Request

Represents an HTTP request.

Response

Represents an HTTP response

Server

A listening HTTP server that accepts connections in both HTTP1 and HTTP2 by default.

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.

Type Definitions

Result

Result type often returned from methods that can have hyper Errors.