[−][src]Struct actix_web::dev::JsonConfig
Json extractor configuration
extern crate mime; #[macro_use] extern crate serde_derive; use actix_web::{error, http, App, HttpResponse, Json, Result}; #[derive(Deserialize)] struct Info { username: String, } /// deserialize `Info` from request's body, max payload size is 4kb fn index(info: Json<Info>) -> Result<String> { Ok(format!("Welcome {}!", info.username)) } fn main() { let app = App::new().resource("/index.html", |r| { r.method(http::Method::POST) .with_config(index, |cfg| { cfg.0.limit(4096) // <- change json extractor configuration .content_type(|mime| { // <- accept text/plain content type mime.type_() == mime::TEXT && mime.subtype() == mime::PLAIN }) .error_handler(|err, req| { // <- create custom error response error::InternalError::from_response( err, HttpResponse::Conflict().finish()).into() }); }) }); }
Methods
impl<S> JsonConfig<S>
[src]
pub fn limit(&mut self, limit: usize) -> &mut Self
[src]
Change max size of payload. By default max size is 256Kb
pub fn error_handler<F>(&mut self, f: F) -> &mut Self where
F: Fn(JsonPayloadError, &HttpRequest<S>) -> Error + 'static,
[src]
F: Fn(JsonPayloadError, &HttpRequest<S>) -> Error + 'static,
Set custom error handler
pub fn content_type<F>(&mut self, predicate: F) -> &mut Self where
F: Fn(Mime) -> bool + 'static,
[src]
F: Fn(Mime) -> bool + 'static,
Set predicate for allowed content types
Trait Implementations
impl<S> Default for JsonConfig<S>
[src]
Auto Trait Implementations
impl<S> !Send for JsonConfig<S>
impl<S> !Sync for JsonConfig<S>
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From for T
[src]
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.