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_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 inserts a key-value pair into the response headers. The key and value are converted into ResponseHeadersKey, allowing for efficient handling of both owned and borrowed string data.

§Parameters
  • key: The header key, which will be converted into a ResponseHeadersKey.
  • value: The value of the header, which will be converted into a ResponseHeadersValue.
§Returns
  • Returns a mutable reference to the current instance (&mut Self), allowing for method chaining.
Source

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

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: Into<ResponseReasonPhrase>>( &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 set_headers(&mut self, val: ResponseHeaders) -> &mut Self

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§

const 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,