Skip to main content

ResponseMutations

Struct ResponseMutations 

Source
pub struct ResponseMutations {
    pub headers: Vec<(String, Vec<u8>)>,
    pub cookies: Vec<Cookie>,
    pub delete_cookies: Vec<String>,
}
Expand description

Mutable response container for setting response headers and cookies.

This extractor allows handlers to set additional response headers and cookies that will be merged into the final response. The handler’s return value determines the status code and body; ResponseMut adds headers on top.

§Example

use fastapi_core::extract::ResponseMut;
use fastapi_core::response::Json;

async fn handler(mut resp: ResponseMut) -> Json<Data> {
    resp.header("X-Custom-Header", "custom-value");
    resp.cookie("session", "abc123");
    Json(data)
}

Fields§

§headers: Vec<(String, Vec<u8>)>

Headers to add to the response.

§cookies: Vec<Cookie>

Cookies to set (name, value, attributes).

§delete_cookies: Vec<String>

Cookies to delete.

Implementations§

Source§

impl ResponseMutations

Source

pub fn new() -> Self

Create empty response mutations.

Source

pub fn add_header(&mut self, name: impl Into<String>, value: impl Into<Vec<u8>>)

Add a header.

Set a cookie.

Delete a cookie by name.

Source

pub fn apply(self, response: Response) -> Response

Apply mutations to a response.

Trait Implementations§

Source§

impl Clone for ResponseMutations

Source§

fn clone(&self) -> ResponseMutations

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 ResponseMutations

Source§

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

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

impl Default for ResponseMutations

Source§

fn default() -> ResponseMutations

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

impl FromRequest for ResponseMutations

Source§

type Error = Infallible

Error type when extraction fails.
Source§

async fn from_request( _ctx: &RequestContext, req: &mut Request, ) -> Result<Self, Self::Error>

Extract a value from the request. 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> Instrument for T

Source§

fn instrument(self, _span: NoopSpan) -> Self

Instruments this future with a span (no-op when disabled).
Source§

fn in_current_span(self) -> Self

Instruments this future with the current span (no-op when disabled).
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> Same for T

Source§

type Output = T

Should always be Self
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 = 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<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ResponseProduces<T> for T