pub struct Response { /* private fields */ }Expand description
HTTP response.
Implementations§
Source§impl Response
impl Response
Sourcepub fn from_read(
status: StatusCode,
header: HeaderMap,
effective_uri: Uri,
metrics: Var<Metrics>,
read: Box<dyn AsyncRead + Send>,
) -> Response
pub fn from_read( status: StatusCode, header: HeaderMap, effective_uri: Uri, metrics: Var<Metrics>, read: Box<dyn AsyncRead + Send>, ) -> Response
New with body download pending or ongoing.
Sourcepub fn from_done(
status: StatusCode,
headers: HeaderMap,
effective_uri: Uri,
metrics: Metrics,
body: IpcBytes,
) -> Response
pub fn from_done( status: StatusCode, headers: HeaderMap, effective_uri: Uri, metrics: Metrics, body: IpcBytes, ) -> Response
New with body already downloaded.
Sourcepub fn from_msg(status: StatusCode, msg: impl ToTxt) -> Response
pub fn from_msg(status: StatusCode, msg: impl ToTxt) -> Response
New with status and message body.
Sourcepub fn status(&self) -> StatusCode
pub fn status(&self) -> StatusCode
Returns the StatusCode.
Sourcepub fn effective_uri(&self) -> &Uri
pub fn effective_uri(&self) -> &Uri
Get the effective URI of this response. This value differs from the original URI provided when making the request if at least one redirect was followed.
Sourcepub fn content_len(&self) -> Option<ByteLength>
pub fn content_len(&self) -> Option<ByteLength>
Get the body bytes length if it is downloaded or Content-Length value if it is present in the headers.
Sourcepub async fn download(&mut self) -> Result<(), Box<dyn Error + Sync + Send>>
pub async fn download(&mut self) -> Result<(), Box<dyn Error + Sync + Send>>
Receive the entire body.
Sourcepub async fn body(&mut self) -> Result<IpcBytes, Box<dyn Error + Sync + Send>>
pub async fn body(&mut self) -> Result<IpcBytes, Box<dyn Error + Sync + Send>>
Download the full body and returns a reference to it.
Sourcepub async fn body_text(&mut self) -> Result<Txt, Box<dyn Error + Sync + Send>>
pub async fn body_text(&mut self) -> Result<Txt, Box<dyn Error + Sync + Send>>
Download the full body and returns it decoded to text.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for Response
impl !RefUnwindSafe for Response
impl Send for Response
impl !Sync for Response
impl !Unpin for Response
impl !UnwindSafe for Response
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more