Skip to main content

Response

Struct Response 

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

A response to be returned to the client. You do not always need to use this struct directly as endpoints can return anything implementing Responder. However this is the most flexible way to construct a reply, and it implements Responder (the “identity” implementation).

Implementations§

Source§

impl Response

Source

pub fn ok() -> Self

Create an empty response with status code OK (200)

Source

pub fn status(s: StatusCode) -> Self

Create an empty response with the given status code

Source

pub fn set_status(&mut self, s: StatusCode)

Set the status code of a response

Source

pub fn get_status(&self) -> StatusCode

Get the status code of a response

Source

pub fn body(self, body: impl Into<Body>) -> Self

Set the body of the response

Source

pub fn reader(self, r: impl AsyncRead + Send + 'static) -> Self

Set the body to an AsyncRead object

Source

pub async fn path(self, path: impl AsRef<Path>) -> Result<Self>

Set the body to the content of a file given by a Path Also sets a content type by guessing the mime type from the path name

Source

pub fn json(self, body: impl Serialize) -> Result<Self>

Set the body of the response to a JSON payload

Source

pub fn form(self, body: impl Serialize) -> Result<Self>

Set the body of the response to form data

Source

pub fn header<H: Header>(self, h: H) -> Self

Set a header (from the headers crate)

Source

pub fn set_header<H: Header>(&mut self, h: H)

Set a header (without consuming self - useful outside of method chains)

Source

pub fn raw_header<N, K>(self, name: N, key: K) -> Result<Self>

Set a raw header (from the http crate)

Source

pub fn set_raw_header<N, K>(&mut self, name: N, key: K) -> Result<()>

Set a raw header (without consuming self)

Source

pub fn into_inner(self) -> Response<Body>

Consume this response and return the inner hyper::Response

Trait Implementations§

Source§

impl AsRef<Response<Body>> for Response

Get a reference to the inner hyper::Response

Source§

fn as_ref(&self) -> &Response<Body>

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl Debug for Response

Source§

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

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

impl From<Response<Body>> for Response

Create a Response from a hyper::Response<hyper::Body>

Source§

fn from(hyper_response: Response<Body>) -> Self

Converts to this type from the input type.
Source§

impl Responder for Response

Identity implementation

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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: 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> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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> 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