@@ -10,6 +10,8 @@ use anyhow::Result;
1010use jsonrpsee:: { proc_macros:: rpc, server:: ServerBuilder , server:: ServerHandle } ;
1111use lazy_static:: lazy_static;
1212use prometheus:: { register_counter, register_int_counter, Counter , IntCounter } ;
13+ use tower:: { Layer , ServiceBuilder } ;
14+ use tower_http:: decompression:: RequestDecompressionLayer ;
1315
1416use crate :: aggregator:: check_and_aggregate_receipts;
1517use crate :: api_versioning:: {
@@ -217,12 +219,15 @@ pub async fn run_server(
217219 max_response_body_size : u32 ,
218220 max_concurrent_connections : u32 ,
219221) -> Result < ( ServerHandle , std:: net:: SocketAddr ) > {
222+ let http_middleware = ServiceBuilder :: new ( ) . layer ( RequestDecompressionLayer :: new ( ) ) ;
223+
220224 // Setting up the JSON RPC server
221225 println ! ( "Starting server..." ) ;
222226 let server = ServerBuilder :: new ( )
223227 . max_request_body_size ( max_request_body_size)
224228 . max_response_body_size ( max_response_body_size)
225229 . max_connections ( max_concurrent_connections)
230+ . set_http_middleware ( http_middleware)
226231 . http_only ( )
227232 . build ( format ! ( "0.0.0.0:{}" , port) )
228233 . await ?;
0 commit comments