Struct rocket::config::Limits [−][src]
pub struct Limits { /* fields omitted */ }
Expand description
Mapping from data type to size limits.
A Limits
structure contains a mapping from a given data type (“forms”,
“json”, and so on) to the maximum size in bytes that should be accepted by a
Rocket application for that data type. For instance, if the limit for
“forms” is set to 256
, only 256 bytes from an incoming form request will
be read.
Defaults
As documented in config
, the default limits are as follows:
- forms: 32KiB
Usage
A Limits
structure is created following the builder pattern:
use rocket::config::Limits;
// Set a limit of 64KiB for forms and 3MiB for JSON.
let limits = Limits::new()
.limit("forms", 64 * 1024)
.limit("json", 3 * 1024 * 1024);
Implementations
Construct a new Limits
structure with the default limits set.
Example
use rocket::config::Limits;
let limits = Limits::new();
assert_eq!(limits.get("forms"), Some(32 * 1024));
Adds or replaces a limit in self
, consuming self
and returning a new
Limits
structure with the added or replaced limit.
Example
use rocket::config::Limits;
let limits = Limits::new()
.limit("json", 1 * 1024 * 1024);
assert_eq!(limits.get("forms"), Some(32 * 1024));
assert_eq!(limits.get("json"), Some(1 * 1024 * 1024));
let new_limits = limits.limit("json", 64 * 1024 * 1024);
assert_eq!(new_limits.get("json"), Some(64 * 1024 * 1024));
Retrieve the set limit, if any, for the data type with name name
.
Example
use rocket::config::Limits;
let limits = Limits::new()
.limit("json", 64 * 1024 * 1024);
assert_eq!(limits.get("forms"), Some(32 * 1024));
assert_eq!(limits.get("json"), Some(64 * 1024 * 1024));
assert!(limits.get("msgpack").is_none());
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Limits
impl UnwindSafe for Limits
Blanket Implementations
Mutably borrows from an owned value. Read more