Available on crate features
dns and http-backend and http and std and tcp only.Expand description
rama http client support
Contains re-exports from rama-http-backend::client
and adds EasyHttpWebClient, an opiniated http web client which
supports most common use cases and provides sensible defaults.
Modules§
Structs§
- Bind
Body ToConn - A connection wrapper that binds the connection to the lifetime of the response body it produces.
- Bind
Body ToConn Layer Layerthat wraps a connector’s connection inBindBodyToConn.- Bind
Body ToConnector - Connector produced by
BindBodyToConnLayer: wraps each established connection inBindBodyToConn. - Blocking
Body - A blocking HTTP response body.
- Blocking
Http Client - A cloneable blocking boundary around an asynchronous HTTP service.
- Blocking
Response - An HTTP response with a blocking body reader and an attached runtime lease.
- Easy
Http Connector Builder - Builder that is designed to easily create a connector for
super::EasyHttpWebClientfrom most basic use cases - Easy
Http WebClient - An opiniated http client that can be used to serve HTTP requests.
- Http3
Connector - Establish authenticated QUIC transports for the common HTTP handshake.
- Http3
Connector Builder - Configure an HTTP/3 connector, including its reusable UDP endpoint.
- Http3
Transport - An established QUIC transport and the HTTP/3 settings to apply during handshake.
- Http
Client Service - Internal http sender used to send the actual requests.
- Http
Conn Id - Connection identity produced by
HttpConnIdentifier. - Http
Conn Identifier - HTTP connection-pool identifier derived from the network route, any version requirement that constrains the physical connection, and whether plaintext HTTP uses forward-proxy or CONNECT-tunnel semantics.
- Http
Connect Request Adapter - Adapt an HTTP
Requestto a protocol-independentConnectRequest. - Http
Connect Request Adapter Layer - Layer that adapts HTTP requests to protocol-independent connection inputs.
- Http
Connector - A
Servicewhich establishes an HTTP Connection. - Http
Connector Layer - A
Layerthat produces anHttpConnector. - Http
Pooled Connector Config - Config used to create a multiplexing http connection pool (
MultiplexPool). - Http
Transport Connector - Select a stream or QUIC transport before the common HTTP handshake. Each connector owns its transport capabilities, including proxy support.
- Maybe
Proxied Connection socks5 - A connection which will be proxied if a proxied
ProxyRoutewas configured. - Proxy
Connector socks5 - Proxy connector which supports http(s) and socks5(h) proxy address
- Proxy
Connector Layer socks5 - Proxy connector layer which supports http(s) and socks5(h) proxy address
Enums§
- Http
Transport - The transport on which the common HTTP connector performs its handshake.
Traits§
- Into
Http Transport - Convert an established transport into the HTTP handshake’s transport types. Ordinary byte-stream connectors are supported without an adapter.
Functions§
- http2_
eager_ handshake - Establish an HTTP/2 connection on the pre-established IO (bytes)
stream without a triggering request, and return both the
HttpClientServiceand aH2PeerSettingsHandlethat resolves to the peer’s initial SETTINGS frame once received. - http_
connect - Perform the HTTP handshake on an established byte stream or QUIC transport.
The selected protocol must agree with the transport; metadata remains attached
to the resulting service for pooling and request adaptation. The input’s
protocol distinguishes secure origins without inferring TLS from a port.
Custom secure transports must publish
ConnectionReuseto enable pooling.
Type Aliases§
- Blocking
Http WebClient - A blocking HTTP(S) client using Rama’s default pooled web connector stack.
- Default
Http WebClient - Rama’s default asynchronous HTTP(S) client, including its default multiplexing connection pool.
- Http
Pooled Connector - Default HTTP pooled connector assembled by
HttpPooledConnectorConfig::build_connector.