Skip to main content

HttpResponse

Struct HttpResponse 

Source
pub struct HttpResponse {
    pub version: HttpVersion,
    pub status_code: ResponseStatusCode,
    pub reason_phrase: String,
    pub headers: HttpResponseHeaders,
    pub body: ResponseBody,
}
Expand description

Parsed HTTP response.

Value type with all fields public — no Arc<RwLock> wrapping, no associated-type / boxed-trait indirection. Use the field accessors directly (response.status_code, response.body, …) or the convenience helpers (response.text(), response.is_success()).

HttpResponse is Clone and Debug. Decoding is a method (HttpResponse::decode) that returns a fresh HttpResponse with the body expanded — original is untouched.

Fields§

§version: HttpVersion

HTTP version (HTTP/1.1, HTTP/2, …).

§status_code: ResponseStatusCode

3-digit numeric status code (200, 404, …).

§reason_phrase: String

Reason phrase ("OK", "Not Found", …).

§headers: HttpResponseHeaders

Response headers (single-value, lowercase keys).

§body: ResponseBody

Raw response body bytes.

Implementations§

Source§

impl HttpResponse

Source§

impl HttpResponse

Source

pub fn set_version(&mut self, val: HttpVersion) -> &mut Self

Source

pub fn set_status_code(&mut self, val: ResponseStatusCode) -> &mut Self

Source

pub fn set_reason_phrase(&mut self, val: impl AsRef<str>) -> &mut Self

Source

pub fn set_headers(&mut self, val: HttpResponseHeaders) -> &mut Self

Source

pub fn set_body(&mut self, val: impl AsRef<[u8]>) -> &mut Self

Source§

impl HttpResponse

Source

pub fn from_bytes(response: &[u8]) -> Self

Construct from raw response bytes (status line + headers + body).

Source

pub fn is_success(&self) -> bool

Was the response a 2xx success?

Source

pub fn is_redirect(&self) -> bool

Was the response a 3xx redirect?

Source

pub fn get_header<K: AsRef<str>>(&self, key: K) -> Option<&str>

Look up a single header value (case-insensitive).

Source

pub fn text(&self) -> String

Get the response body as a UTF-8 string (lossy on invalid bytes).

Source

pub fn bytes(&self) -> &[u8] ⓘ

Get the response body as raw bytes.

Source

pub fn decode(&self, buffer_size: usize) -> HttpResponse

Decode the body using the headers’ Content-Encoding (gzip / deflate / br). Returns a fresh response with the decoded body — the original is untouched. buffer_size controls the chunk size for streaming decoders.

Trait Implementations§

Source§

impl Clone for HttpResponse

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for HttpResponse

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for HttpResponse

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> AnySend for T
where T: Any + Send,

Source§

impl<T> AnySendClone for T
where T: Any + Send + Clone,

Source§

impl<T> AnySendSync for T
where T: Any + Send + Sync,

Source§

impl<T> AnySendSyncClone for T
where T: Any + Send + Sync + Clone,

Source§

impl<T> AnySync for T
where T: Any + Sync,

Source§

impl<T> AnySyncClone for T
where T: Any + Sync + Clone,

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.