diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 7ad9f01..2a365fe 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -719,6 +719,7 @@ name = "cultivation" version = "0.1.0" dependencies = [ "futures-util", + "http", "hudsucker", "lazy_static", "open", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index b9747e8..24ddf56 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -38,6 +38,7 @@ open = "2.1.2" serde_json = "1" # Dependencies for the HTTP(S) proxy. +http = "0.2" hudsucker = "0.17.2" tracing = "0.1.21" tokio-rustls = "0.23.0" diff --git a/src-tauri/src/proxy.rs b/src-tauri/src/proxy.rs index 3836228..1801bf2 100644 --- a/src-tauri/src/proxy.rs +++ b/src-tauri/src/proxy.rs @@ -6,6 +6,8 @@ use lazy_static::lazy_static; use std::sync::Mutex; +use http; + use hudsucker::{ async_trait::async_trait, certificate_authority::RcgenAuthority, @@ -58,6 +60,8 @@ impl HttpHandler for ProxyHandler { let uri = format!("https://{}{}", SERVER.lock().unwrap(), uri_path).parse::().unwrap(); *request.uri_mut() = uri; + + request.headers_mut().remove(http::header::HOST); } println!("New request: {}", &request.uri());