Struct volo_http::BodyIncoming
source · pub struct BodyIncoming { /* private fields */ }Expand description
A stream of Bytes, used when receiving bodies from the network.
Note that Users should not instantiate this struct directly. When working with the hyper client,
Incoming is returned to you in responses. Similarly, when operating with the hyper server,
it is provided within requests.
Examples
ⓘ
async fn echo(
req: Request<hyper::body::Incoming>,
) -> Result<Response<BoxBody<Bytes, hyper::Error>>, hyper::Error> {
//Here, you can process `Incoming`
}Trait Implementations§
source§impl Body for Incoming
impl Body for Incoming
source§fn poll_frame(
self: Pin<&mut Incoming>,
cx: &mut Context<'_>
) -> Poll<Option<Result<Frame<<Incoming as Body>::Data>, <Incoming as Body>::Error>>>
fn poll_frame( self: Pin<&mut Incoming>, cx: &mut Context<'_> ) -> Poll<Option<Result<Frame<<Incoming as Body>::Data>, <Incoming as Body>::Error>>>
Attempt to pull out the next data buffer of this stream.
source§fn is_end_stream(&self) -> bool
fn is_end_stream(&self) -> bool
Returns
true when the end of stream has been reached. Read moresource§impl<S: Sync> FromRequest<S> for Incoming
impl<S: Sync> FromRequest<S> for Incoming
type Rejection = Infallible
async fn from_request( _cx: &mut HttpContext, body: Incoming, _state: &S ) -> Result<Self, Self::Rejection>
source§impl<S, T> Service<HttpContext, Incoming> for ExtensionService<S, T>where
S: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Send + Sync + 'static,
T: Clone + Send + Sync + 'static,
impl<S, T> Service<HttpContext, Incoming> for ExtensionService<S, T>where
S: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Send + Sync + 'static,
T: Clone + Send + Sync + 'static,
source§impl<S, H, R, T> Service<HttpContext, Incoming> for Filter<S, H, R, T>where
S: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Send + Sync + 'static,
H: HandlerWithoutRequest<T, Result<(), R>> + Clone + Send + Sync + 'static,
R: IntoResponse + Send + Sync,
T: Sync,
impl<S, H, R, T> Service<HttpContext, Incoming> for Filter<S, H, R, T>where
S: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Send + Sync + 'static,
H: HandlerWithoutRequest<T, Result<(), R>> + Clone + Send + Sync + 'static,
R: IntoResponse + Send + Sync,
T: Sync,
source§impl<I, F, S, T> Service<HttpContext, Incoming> for FromFn<I, F, S, T>where
I: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Clone + Send + Sync + 'static,
F: for<'r> MiddlewareHandlerFromFn<'r, T, S> + Clone + Sync,
S: Clone + Sync,
impl<I, F, S, T> Service<HttpContext, Incoming> for FromFn<I, F, S, T>where
I: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Clone + Send + Sync + 'static,
F: for<'r> MiddlewareHandlerFromFn<'r, T, S> + Clone + Sync,
S: Clone + Sync,
source§impl<H, S, T> Service<HttpContext, Incoming> for HandlerService<H, S, T>
impl<H, S, T> Service<HttpContext, Incoming> for HandlerService<H, S, T>
§type Error = Infallible
type Error = Infallible
Errors produced by the service.
source§impl<I, F, S, T> Service<HttpContext, Incoming> for MapResponse<I, F, S, T>where
I: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Clone + Send + Sync + 'static,
F: for<'r> MiddlewareHandlerMapResponse<'r, T, S> + Clone + Sync,
S: Clone + Sync,
impl<I, F, S, T> Service<HttpContext, Incoming> for MapResponse<I, F, S, T>where
I: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Clone + Send + Sync + 'static,
F: for<'r> MiddlewareHandlerMapResponse<'r, T, S> + Clone + Sync,
S: Clone + Sync,
source§impl Service<HttpContext, Incoming> for Router<()>
impl Service<HttpContext, Incoming> for Router<()>
§type Error = Infallible
type Error = Infallible
Errors produced by the service.
source§impl<S, H, R, T> Service<HttpContext, Incoming> for Timeout<S, H, R, T>where
S: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Send + Sync + 'static,
H: HandlerWithoutRequest<T, R> + Clone + Send + Sync + 'static,
R: IntoResponse + Sync,
T: Sync,
impl<S, H, R, T> Service<HttpContext, Incoming> for Timeout<S, H, R, T>where
S: Service<HttpContext, Incoming, Response = Response, Error = Infallible> + Send + Sync + 'static,
H: HandlerWithoutRequest<T, R> + Clone + Send + Sync + 'static,
R: IntoResponse + Sync,
T: Sync,
Auto Trait Implementations§
impl !RefUnwindSafe for Incoming
impl Send for Incoming
impl Sync for Incoming
impl Unpin for Incoming
impl !UnwindSafe for Incoming
Blanket Implementations§
source§impl<T> BodyExt for Twhere
T: Body + ?Sized,
impl<T> BodyExt for Twhere
T: Body + ?Sized,
source§fn frame(&mut self) -> Frame<'_, Self>where
Self: Unpin,
fn frame(&mut self) -> Frame<'_, Self>where
Self: Unpin,
Returns a future that resolves to the next
Frame, if any.source§fn map_frame<F, B>(self, f: F) -> MapFrame<Self, F>
fn map_frame<F, B>(self, f: F) -> MapFrame<Self, F>
Maps this body’s frame to a different kind.
source§fn map_err<F, E>(self, f: F) -> MapErr<Self, F>
fn map_err<F, E>(self, f: F) -> MapErr<Self, F>
Maps this body’s error value to a different value.
source§fn boxed_unsync(self) -> UnsyncBoxBody<Self::Data, Self::Error>
fn boxed_unsync(self) -> UnsyncBoxBody<Self::Data, Self::Error>
Turn this body into a boxed trait object that is !Sync.
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more