[]Struct paperclip::actix::web::QueryConfig

pub struct QueryConfig { /* fields omitted */ }

Query extractor configuration

Example

use actix_web::{error, web, App, FromRequest, HttpResponse};
use serde_derive::Deserialize;

#[derive(Deserialize)]
struct Info {
    username: String,
}

/// deserialize `Info` from request's querystring
async fn index(info: web::Query<Info>) -> String {
    format!("Welcome {}!", info.username)
}

fn main() {
    let app = App::new().service(
        web::resource("/index.html").app_data(
            // change query extractor configuration
            web::Query::<Info>::configure(|cfg| {
                cfg.error_handler(|err, req| {  // <- create custom error response
                    error::InternalError::from_response(
                        err, HttpResponse::Conflict().finish()).into()
                })
            }))
            .route(web::post().to(index))
    );
}

Methods

impl QueryConfig

pub fn error_handler<F>(self, f: F) -> QueryConfig where
    F: Fn(QueryPayloadError, &HttpRequest) -> Error + Send + Sync + 'static, 

Set custom error handler

Trait Implementations

impl Clone for QueryConfig

impl Default for QueryConfig

Auto Trait Implementations

impl !RefUnwindSafe for QueryConfig

impl Send for QueryConfig

impl Sync for QueryConfig

impl Unpin for QueryConfig

impl !UnwindSafe for QueryConfig

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Err = <U as TryFrom<T>>::Err

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,