Struct hyper::server::Http [] [src]

pub struct Http<B = Chunk> { /* fields omitted */ }

An instance of the HTTP protocol, and implementation of tokio-proto's ServerProto trait.

This structure is used to create instances of Server or to spawn off tasks which handle a connection to an HTTP server. Each instance of Http can be configured with various protocol-level options such as keepalive.


impl<B: AsRef<[u8]> + 'static> Http<B>

Creates a new instance of the HTTP protocol, ready to spawn a server or start accepting connections.

Enables or disables HTTP keep-alive.

Default is true.

Bind the provided addr and return a server ready to handle connections.

This method will bind the addr provided with a new TCP listener ready to accept connections. Each connection will be processed with the new_service object provided as well, creating a new service per connection.

The returned Server contains one method, run, which is used to actually run the server.

Use this Http instance to create a new server task which handles the connection io provided.

This is the low-level method used to actually spawn handling a TCP connection, typically. The handle provided is the event loop on which the server task will be spawned, io is the I/O object associated with this connection (data that's read/written), remote_addr is the remote peer address of the HTTP client, and service defines how HTTP requests will be handled (and mapped to responses).

This method is typically not invoked directly but is rather transitively used through bind. This can be useful, however, when writing mocks or accepting sockets from a non-TCP location.

Trait Implementations

impl<B> Clone for Http<B>

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl<B> Debug for Http<B>

Formats the value using the given formatter.

impl<T, B> ServerProto<T> for Http<B> where
    T: AsyncRead + AsyncWrite + 'static,
    B: AsRef<[u8]> + 'static, 

Request headers.

Request body chunks.

Response headers.

Response body chunks.

Errors, which are used both for error frames and for the service itself.

The frame transport, which usually take T as a parameter.

A future for initializing a transport from an I/O object. Read more

Build a transport from the given I/O object, using self for any configuration. Read more