diff --git a/Cargo.toml b/Cargo.toml index b80fc2b..c577cf4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ serde = {version="1.0.190", default-features=false, features=["derive"]} serde_json = {version="1.0.108", default-features=false} maud = {version="0.25.0", default-features=false, features=["actix-web"]} scraper = {version="0.18.1", default-features = false} -actix-web = {version="4.4.0", features = ["cookies", "macros"], default-features=false} +actix-web = {version="4.4.0", features = ["cookies", "macros", "compress-brotli"], default-features=false} actix-files = {version="0.6.2", default-features=false} actix-cors = {version="0.6.4", default-features=false} fake-useragent = {version="0.1.3", default-features=false} diff --git a/src/lib.rs b/src/lib.rs index 0d8f49d..ec35273 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -21,7 +21,12 @@ use crate::server::router; use actix_cors::Cors; use actix_files as fs; use actix_governor::{Governor, GovernorConfigBuilder}; -use actix_web::{dev::Server, http::header, middleware::Logger, web, App, HttpServer}; +use actix_web::{ + dev::Server, + http::header, + middleware::{Compress, Logger}, + web, App, HttpServer, +}; use cache::cacher::{Cacher, SharedCache}; use config::parser::Config; use handler::{file_path, FileType}; @@ -73,6 +78,8 @@ pub fn run( ]); App::new() + // Compress the responses provided by the server for the client requests. + .wrap(Compress::default()) .wrap(Logger::default()) // added logging middleware for logging. .app_data(web::Data::new(config.clone())) .app_data(cache.clone())