Struct Response

Source
pub struct Response { /* private fields */ }
Expand description

Represents a parsed HTTP response.

Implementations§

Source§

impl Response

Source

pub fn new() -> Self

Creates a new instance of Response.

§Returns
  • An initialized Response with default values.
Source

pub fn get_header<K>(&self, key: K) -> OptionResponseHeadersValue

Retrieves the value of a response header by its key.

§Parameters
  • key: The header’s key, which can be of any type that implements Into<ResponseHeadersKey>.
§Returns
  • OptionResponseHeadersValue: Returns Some(value) if the key exists in the response headers, or None if the key does not exist.
Source

pub fn get_header_front<K>(&self, key: K) -> OptionResponseHeadersValueItem

Retrieves the first value of a response header by its key.

§Parameters
  • key: The header’s key, which can be of any type that implements Into<ResponseHeadersKey>.
§Returns
  • OptionResponseHeadersValueItem: Returns Some(value) if the key exists and has at least one value, or None if the key does not exist or has no values.
Source

pub fn get_header_back<K>(&self, key: K) -> OptionResponseHeadersValueItem

Retrieves the last value of a response header by its key.

§Parameters
  • key: The header’s key, which can be of any type that implements Into<ResponseHeadersKey>.
§Returns
  • OptionResponseHeadersValueItem: Returns Some(value) if the key exists and has at least one value, or None if the key does not exist or has no values.
Source

pub fn has_header<K>(&self, key: K) -> bool

Checks if a header exists in the response.

§Parameters
  • key: The header key to check, which will be converted into a ResponseHeadersKey.
§Returns
  • true: If the header exists.
  • false: If the header does not exist.
Source

pub fn has_header_value<K, V>(&self, key: K, value: V) -> bool

Checks if a header contains a specific value.

§Parameters
  • key: The header key to check, which will be converted into a ResponseHeadersKey.
  • value: The value to search for in the header.
§Returns
  • true: If the header exists and contains the specified value.
  • false: If the header does not exist or does not contain the value.
Source

pub fn get_headers_len(&self) -> usize

Gets the number of headers in the response.

§Returns
  • The number of unique header keys in the response.
Source

pub fn get_header_len<K>(&self, key: K) -> usize

Gets the number of values for a specific header key.

§Parameters
  • key: The header key to count values for, which will be converted into a ResponseHeadersKey.
§Returns
  • The number of values for the specified header key. Returns 0 if the header does not exist.
Source

pub fn get_headers_values_len(&self) -> usize

Gets the total number of header values in the response.

This counts all values across all headers, so a header with multiple values will contribute more than one to the total count.

§Returns
  • The total number of header values in the response.
Source

pub fn get_body_string(&self) -> String

Retrieves the body content of the object as a UTF-8 encoded string.

This method uses String::from_utf8_lossy to convert the byte slice returned by self.get_body() into a string. If the byte slice contains invalid UTF-8 sequences, they will be replaced with the Unicode replacement character (�).

§Returns

A String containing the body content.

Source

pub fn get_body_json<T>(&self) -> ResultJsonError<T>

Deserializes the body content of the object into a specified type T.

This method first retrieves the body content as a UTF-8 encoded string using self.get_body(). It then attempts to deserialize the string into the specified type T using json_from_slice.

§Type Parameters
  • T: The target type to deserialize into. It must implement the DeserializeOwned trait.
§Returns
  • Ok(T): The deserialized object of type T if the deserialization is successful.
  • Err(ResultJsonError): An error if the deserialization fails (e.g., invalid JSON format or type mismatch).
Source

pub fn set_header<K, V>(&mut self, key: K, value: V) -> &mut Self

Adds a header to the response.

This function appends a value to the response headers. If the header already exists, the new value will be added to the existing values.

§Parameters
  • key: The header key, which will be converted into a ResponseHeadersKey.
  • value: The value of the header, which will be converted into a String.
Source

pub fn replace_header<K, V>(&mut self, key: K, value: V) -> &mut Self

Replaces all values for a header in the response.

This function replaces all existing values for a header with a single new value.

§Parameters
  • key: The header key, which will be converted into a ResponseHeadersKey.
  • value: The value of the header, which will be converted into a String.
Source

pub fn remove_header<K>(&mut self, key: K) -> &mut Self

Removes a header from the response.

This function removes all values for the specified header key.

§Parameters
  • key: The header key to remove, which will be converted into a ResponseHeadersKey.
Source

pub fn remove_header_value<K, V>(&mut self, key: K, value: V) -> &mut Self

Removes a specific value from a header in the response.

This function removes only the specified value from the header. If the header has multiple values, only the matching value is removed. If this was the last value for the header, the entire header is removed.

§Parameters
  • key: The header key, which will be converted into a ResponseHeadersKey.
  • value: The specific value to remove from the header.
Source

pub fn clear_headers(&mut self) -> &mut Self

Clears all headers from the response.

This function removes all headers, leaving the headers map empty.

Source

pub fn set_body<T>(&mut self, body: T) -> &mut Self
where T: Into<ResponseBody>,

Set the body of the response.

This method allows you to set the body of the response by converting the provided value into a ResponseBody type. The body is updated with the converted value, and the method returns a mutable reference to the current instance for method chaining.

§Parameters
  • body: The body of the response to be set. It can be any type that can be converted into a ResponseBody using the Into trait.
§Return Value
  • Returns a mutable reference to the current instance of the struct, enabling method chaining. Set the body of the response.

This method allows you to set the body of the response by converting the provided value into a ResponseBody type. The body is updated with the converted value, and the method returns a mutable reference to the current instance for method chaining.

§Parameters
  • body: The body of the response to be set. It can be any type that can be converted into a ResponseBody using the Into trait.
§Return Value
  • Returns a mutable reference to the current instance of the struct, enabling method chaining.
Source

pub fn set_reason_phrase<T>(&mut self, reason_phrase: T) -> &mut Self

Set the reason phrase of the response.

This method allows you to set the reason phrase of the response by converting the provided value into a ResponseReasonPhrase type. The reason_phrase is updated with the converted value, and the method returns a mutable reference to the current instance for method chaining.

§Parameters
  • reason_phrase: The reason phrase to be set for the response. It can be any type that can be converted into a ResponseReasonPhrase using the Into trait.
§Return Value
  • Returns a mutable reference to the current instance of the struct, enabling method chaining.
Source

pub fn build(&mut self) -> ResponseData

Builds the full HTTP response as a byte vector.

§Returns
  • ResponseData: response data
Source

pub fn get_string(&self) -> String

Converts the response to a formatted string representation.

  • Returns: A String containing formatted response details.
Source§

impl Response

Source

pub fn get_version(&self) -> &ResponseVersion

Source

pub fn get_mut_version(&mut self) -> &mut ResponseVersion

Source

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

Source

pub fn get_status_code(&self) -> &ResponseStatusCode

Source

pub fn get_mut_status_code(&mut self) -> &mut ResponseStatusCode

Source

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

Source

pub fn get_reason_phrase(&self) -> &ResponseReasonPhrase

Source

pub fn get_mut_reason_phrase(&mut self) -> &mut ResponseReasonPhrase

Source

pub fn get_headers(&self) -> &ResponseHeaders

Source

pub fn get_mut_headers(&mut self) -> &mut ResponseHeaders

Source

pub fn get_body(&self) -> &ResponseBody

Source

pub fn get_mut_body(&mut self) -> &mut ResponseBody

Trait Implementations§

Source§

impl Clone for Response

Source§

fn clone(&self) -> Response

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for Response

Source§

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

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

impl Default for Response

Source§

fn default() -> Self

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

impl Display for Response

Source§

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

Formats the value using the given formatter. 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> 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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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> ErasedDestructor for T
where T: 'static,