pub async fn handshake<T>(
io: T
) -> Result<(SendRequest<Bytes>, Connection<T, Bytes>), Error> where
T: AsyncRead + AsyncWrite + Unpin,
Expand description
Creates a new configured HTTP/2 client with default configuration
values backed by io
.
It is expected that io
already be in an appropriate state to commence
the HTTP/2 handshake. See Handshake for more details.
Returns a future which resolves to the Connection
/ SendRequest
tuple once the HTTP/2 handshake has been completed. The returned
Connection
instance will be using default configuration values. Use
Builder
to customize the configuration values used by a Connection
instance.
Examples
let (send_request, connection) = client::handshake(my_io).await?;
// The HTTP/2 handshake has completed, now start polling
// `connection` and use `send_request` to send requests to the
// server.