pub struct SendRequest<B> { /* private fields */ }
Available on crate feature
client
and (crate features http1
or http2
) only.Expand description
The sender side of an established connection.
Implementations§
source§impl<B> SendRequest<B>
impl<B> SendRequest<B>
sourcepub fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<()>>
pub fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll<Result<()>>
Polls to determine whether this sender can be used yet for a request.
If the associated connection is closed, this returns an Error.
sourcepub async fn ready(&mut self) -> Result<()>
pub async fn ready(&mut self) -> Result<()>
Waits until the dispatcher is ready
If the associated connection is closed, this returns an Error.
sourcepub fn is_ready(&self) -> bool
pub fn is_ready(&self) -> bool
Checks if the connection is currently ready to send a request.
Note
This is mostly a hint. Due to inherent latency of networks, it is possible that even after checking this is ready, sending a request may still fail because the connection was closed in the meantime.
source§impl<B> SendRequest<B>where
B: Body + 'static,
impl<B> SendRequest<B>where B: Body + 'static,
sourcepub fn send_request(
&mut self,
req: Request<B>
) -> impl Future<Output = Result<Response<IncomingBody>>>
pub fn send_request( &mut self, req: Request<B> ) -> impl Future<Output = Result<Response<IncomingBody>>>
Sends a Request
on the associated connection.
Returns a future that if successful, yields the Response
.
Note
There are some key differences in what automatic things the Client
does for you that will not be done here:
Client
requires absolute-formUri
s, since the scheme and authority are needed to connect. They aren’t required here.- Since the
Client
requires absolute-formUri
s, it can add theHost
header based on it. You must add aHost
header yourself before calling this method. - Since absolute-form
Uri
s are not required, if received, they will be serialized as-is.