Trait HttpService

Source
pub trait HttpService<ReqBody> {
    type ResBody: HttpBody;
    type Error: Into<Box<dyn Error + Send + Sync>>;
    type Future: Future<Output = Result<Response<Self::ResBody>, Self::Error>>;
}
Expand description

An asynchronous function from Request to Response.

Required Associated Types§

Source

type ResBody: HttpBody

The HttpBody body of the http::Response.

Source

type Error: Into<Box<dyn Error + Send + Sync>>

The error type that can occur within this Service.

Note: Returning an Error to a hyper server will cause the connection to be abruptly aborted. In most cases, it is better to return a Response with a 4xx or 5xx status code.

Source

type Future: Future<Output = Result<Response<Self::ResBody>, Self::Error>>

The Future returned by this Service.

Implementors§

Source§

impl<T, BIn, BOut> HttpService<BIn> for T
where T: Service<Request<BIn>, Response = Response<BOut>>, BOut: HttpBody, T::Error: Into<Box<dyn Error + Send + Sync>>,

Source§

type ResBody = BOut

Source§

type Error = <T as Service<Request<BIn>>>::Error

Source§

type Future = <T as Service<Request<BIn>>>::Future