Struct actix_web::web::JsonConfig
source · [−]pub struct JsonConfig { /* private fields */ }
Expand description
Json
extractor configuration.
Examples
use actix_web::{error, post, web, App, FromRequest, HttpResponse};
use serde::Deserialize;
#[derive(Deserialize)]
struct Info {
name: String,
}
// `Json` extraction is bound by custom `JsonConfig` applied to App.
#[post("/")]
async fn index(info: web::Json<Info>) -> String {
format!("Welcome {}!", info.name)
}
// custom `Json` extractor configuration
let json_cfg = web::JsonConfig::default()
// limit request payload size
.limit(4096)
// only accept text/plain content type
.content_type(|mime| mime == mime::TEXT_PLAIN)
// use custom error handler
.error_handler(|err, req| {
error::InternalError::from_response(err, HttpResponse::Conflict().into()).into()
});
App::new()
.app_data(json_cfg)
.service(index);
Implementations
sourceimpl JsonConfig
impl JsonConfig
sourcepub fn limit(self, limit: usize) -> Self
pub fn limit(self, limit: usize) -> Self
Set maximum accepted payload size. By default this limit is 2MB.
sourcepub fn error_handler<F>(self, f: F) -> Self where
F: Fn(JsonPayloadError, &HttpRequest) -> Error + Send + Sync + 'static,
pub fn error_handler<F>(self, f: F) -> Self where
F: Fn(JsonPayloadError, &HttpRequest) -> Error + Send + Sync + 'static,
Set custom error handler.
sourcepub fn content_type<F>(self, predicate: F) -> Self where
F: Fn(Mime) -> bool + Send + Sync + 'static,
pub fn content_type<F>(self, predicate: F) -> Self where
F: Fn(Mime) -> bool + Send + Sync + 'static,
Set predicate for allowed content types.
sourcepub fn content_type_required(self, content_type_required: bool) -> Self
pub fn content_type_required(self, content_type_required: bool) -> Self
Sets whether or not the request must have a Content-Type
header to be parsed.
Trait Implementations
sourceimpl Clone for JsonConfig
impl Clone for JsonConfig
sourcefn clone(&self) -> JsonConfig
fn clone(&self) -> JsonConfig
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl !RefUnwindSafe for JsonConfig
impl Send for JsonConfig
impl Sync for JsonConfig
impl Unpin for JsonConfig
impl !UnwindSafe for JsonConfig
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more