pub struct Response { /* private fields */ }Expand description
Represents an HTTP response.
§Fields
version: The HTTP version of the response.status_code: The status code of the response.reason_phrase: The reason phrase corresponding to the status code.headers: A collection of HTTP headers as key-value pairs.body: The binary body of the response.
Implementations§
Source§impl Response
impl Response
Sourcepub fn get_header<K>(&self, key: K) -> Option<String>
pub fn get_header<K>(&self, key: K) -> Option<String>
Sourcepub fn set_header<K, V>(&mut self, key: K, value: V) -> &mut Response
pub fn set_header<K, V>(&mut self, key: K, value: V) -> &mut Response
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 aResponseHeadersKey.value: The value of the header, which will be converted into aResponseHeadersValue.
§Returns
- Returns a mutable reference to the current instance (
&mut Self), allowing for method chaining.
Sourcepub fn set_body<T>(&mut self, body: T) -> &mut Response
pub fn set_body<T>(&mut self, body: T) -> &mut Response
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 aResponseBodyusing theIntotrait.
§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 aResponseBodyusing theIntotrait.
§Return Value
- Returns a mutable reference to the current instance of the struct, enabling method chaining.
Sourcepub fn set_reason_phrase<T>(&mut self, reason_phrase: T) -> &mut Response
pub fn set_reason_phrase<T>(&mut self, reason_phrase: T) -> &mut Response
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 aResponseReasonPhraseusing theIntotrait.
§Return Value
- Returns a mutable reference to the current instance of the struct, enabling method chaining.
Sourcepub async fn send_body(
&mut self,
stream_lock: &ArcRwLockStream,
is_websocket: bool,
) -> Result<(), Error>
pub async fn send_body( &mut self, stream_lock: &ArcRwLockStream, is_websocket: bool, ) -> Result<(), Error>
Sourcepub async fn flush(
&mut self,
stream_lock: &ArcRwLockStream,
) -> Result<(), Error>
pub async fn flush( &mut self, stream_lock: &ArcRwLockStream, ) -> Result<(), Error>
Flush the TCP stream.
-
stream_lock: A reference to anArcRwLockStreamthat manages the TCP stream. -
Returns: A
ResponseResultindicating success or failure.
Sourcepub async fn close(
&mut self,
stream_lock: &ArcRwLockStream,
) -> Result<(), Error>
pub async fn close( &mut self, stream_lock: &ArcRwLockStream, ) -> Result<(), Error>
Closes the stream after sending the response.
This function is responsible for:
- Building the response using the
build()method. - Setting the response using the
set_response()method. - Shutting down the write half of the TCP stream to indicate no more data will be sent.
§Parameters
stream: A reference to theTcpStreamthat will be closed after sending the response.
§Returns
ResponseResult: The result of the operation, indicating whether the closure was successful or if an error occurred.
Sourcepub fn get_string(&self) -> String
pub fn get_string(&self) -> String
Converts the response to a formatted string representation.
- Returns: A
Stringcontaining formatted response details.