Struct tower_http::compression::predicate::DefaultPredicate
source · pub struct DefaultPredicate(_);
Available on crate features
compression-br
or compression-deflate
or compression-gzip
only.Expand description
The default predicate used by Compression
and CompressionLayer
.
This will compress responses unless:
- They’re gRPC, which has its own protocol specific compression scheme.
- It’s an image as determined by the
content-type
starting withimage/
. - The response is less than 32 bytes.
Configuring the defaults
DefaultPredicate
doesn’t support any configuration. Instead you can build your own predicate
by combining types in this module:
use tower_http::compression::predicate::{SizeAbove, NotForContentType, Predicate};
// slightly large min size than the default 32
let predicate = SizeAbove::new(256)
// still don't compress gRPC
.and(NotForContentType::GRPC)
// still don't compress images
.and(NotForContentType::IMAGES)
// also don't compress JSON
.and(NotForContentType::const_new("application/json"));
Implementations§
Trait Implementations§
source§impl Clone for DefaultPredicate
impl Clone for DefaultPredicate
source§fn clone(&self) -> DefaultPredicate
fn clone(&self) -> DefaultPredicate
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read more