Crate trillium_client

source ·
Expand description

trillium client is a http client that uses the same conn approach as trillium but which can be used independently for any http client application.


[trillium_client::Client] is built with a Connector. Each runtime crate (trillium_smol, trillium_tokio, trillium_async_std) offers a Connector implementation, which can optionally be combined with a tls crate such as trillium_rustls or trillium_native_tls.

See the documentation for Client and Conn for further usage examples.


  • A client contains a Config and an optional connection pool and builds conns.
  • a client connection, representing both an outbound http request and a http response
  • The name of a http header. This can be either a KnownHeaderName or a string representation of an unknown header.
  • A HeaderValue represents the right hand side of a single name: value pair.
  • A header value is a collection of one or more HeaderValue. It has been optimized for the “one HeaderValue” case, but can accomodate more than one value.
  • Trillium’s header map type
  • An unexpected http status code was received. Transform this back into the conn with From::from/Into::into.
  • A parsed URL record.


  • Concrete errors that occur within trillium’s http implementation
  • A short nonehaustive enum of headers that trillium can represent as a u8. Use a KnownHeaderName variant instead of a &’static str anywhere possible, as it allows trillium to skip parsing the header entirely.
  • HTTP response status codes.
  • The version of the HTTP protocol in use.



  • Interface for runtime and tls adapters for the trillium client
  • attempt to construct a url, with base if present


Type Aliases

  • this crate’s result type

Attribute Macros