Skip to main content

HttpContext

Struct HttpContext 

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

Concrete implementation of IHttpContext wrapping a hyper request and response.

The request body is eagerly read during construction so that the IHttpRequest trait can provide sync access to body bytes.

Implementations§

Source§

impl HttpContext

Source

pub async fn new(req: Request<Incoming>, max_body_size: usize) -> HttpContext

Create a new HttpContext by eagerly reading the request body.

Reads the body in chunks using [BodyExt::frame], tracking total size. When max_body_size is exceeded, the context is built with a 413 Payload Too Large response pre-set.

Source

pub fn into_response(self) -> Response<Full<Bytes>>

Trait Implementations§

Source§

impl IClaimsExt for HttpContext

Source§

fn set_claims(&mut self, claims: Box<dyn IClaims>)

Store authentication claims in the context.
Source§

fn claims(&self) -> Option<&dyn IClaims>

Retrieve authentication claims from the context, if present.
Source§

impl IHttpContext for HttpContext

Source§

fn request(&self) -> &dyn IHttpRequest

Source§

fn request_mut(&mut self) -> &mut dyn IHttpRequest

Source§

fn response(&self) -> &dyn IHttpResponse

Source§

fn response_mut(&mut self) -> &mut dyn IHttpResponse

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> IClaimsCarrier for T
where T: Send,

Source§

fn set_claims(&mut self, _claims: Option<Box<dyn IClaims>>)

Default no-op. Overridden by inherent set_claims on types that carry claims.
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, 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