logo
pub struct ErrorHandlers<B> { /* private fields */ }
Expand description

Middleware for registering custom status code based error handlers.

Register handlers with the ErrorHandlers::handler() method to register a custom error handler for a given status code. Handlers can modify existing responses or create completely new ones.

Examples

use actix_web::middleware::{ErrorHandlers, ErrorHandlerResponse};
use actix_web::{web, dev, App, HttpRequest, HttpResponse, Result};
use actix_web::http::{StatusCode, header};

fn render_500<B>(mut res: dev::ServiceResponse<B>) -> Result<ErrorHandlerResponse<B>> {
    res.response_mut()
       .headers_mut()
       .insert(header::CONTENT_TYPE, header::HeaderValue::from_static("Error"));

    Ok(ErrorHandlerResponse::Response(res.map_into_left_body()))
}

let app = App::new()
    .wrap(
        ErrorHandlers::new()
            .handler(StatusCode::INTERNAL_SERVER_ERROR, render_500),
    )
    .service(web::resource("/test")
        .route(web::get().to(|| HttpResponse::Ok()))
        .route(web::head().to(|| HttpResponse::MethodNotAllowed())
    ));

Implementations

Construct new ErrorHandlers instance.

Register error handler for specified status code.

Trait Implementations

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

Responses produced by the service.

Errors produced by the service.

The TransformService value created by this factory

Errors produced while building a transform service.

The future response value.

Creates and returns a new Transform component, asynchronously

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

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

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

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

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