pub struct Http1Reader<R> { /* private fields */ }Expand description
Decodes one HTTP/1.x response from io.
Implementations§
Source§impl<R: AsyncRead + Unpin> Http1Reader<R>
impl<R: AsyncRead + Unpin> Http1Reader<R>
pub fn new(io: R) -> Self
pub fn with_limits(io: R, limits: Limits) -> Self
Sourcepub fn with_limits_and_buffer(io: R, limits: Limits, buffered: BytesMut) -> Self
pub fn with_limits_and_buffer(io: R, limits: Limits, buffered: BytesMut) -> Self
Resume a reader on a pooled connection, seeding the buffer with bytes the previous response left behind (pipelined or simply already delivered).
Sourcepub fn into_inner(self) -> (R, BytesMut)
pub fn into_inner(self) -> (R, BytesMut)
Recover the transport and any bytes already buffered beyond the body.
Sourcepub async fn read_response_head(
&mut self,
request_method: &Method,
) -> Result<ResponseHead, HttpError>
pub async fn read_response_head( &mut self, request_method: &Method, ) -> Result<ResponseHead, HttpError>
Parse the response head. request_method is needed because a HEAD
response carries no body regardless of its framing headers.
Sourcepub async fn read_body_chunk(&mut self) -> Result<Option<Bytes>, HttpError>
pub async fn read_body_chunk(&mut self) -> Result<Option<Bytes>, HttpError>
Read the next body bytes, or None at the end of the body.
The returned slice may be smaller than the remaining body; call again.
Sourcepub async fn read_body_to_end(&mut self) -> Result<Bytes, HttpError>
pub async fn read_body_to_end(&mut self) -> Result<Bytes, HttpError>
Drain the body into one buffer, bounded by Limits::max_body_bytes.
Trait Implementations§
Auto Trait Implementations§
impl<R> Freeze for Http1Reader<R>where
R: Freeze,
impl<R> RefUnwindSafe for Http1Reader<R>where
R: RefUnwindSafe,
impl<R> Send for Http1Reader<R>where
R: Send,
impl<R> Sync for Http1Reader<R>where
R: Sync,
impl<R> Unpin for Http1Reader<R>where
R: Unpin,
impl<R> UnsafeUnpin for Http1Reader<R>where
R: UnsafeUnpin,
impl<R> UnwindSafe for Http1Reader<R>where
R: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more