diff --git a/Cargo.toml b/Cargo.toml index 45b3bda..8c1c381 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,11 +21,12 @@ default-struct-builder = "0.5" futures-util = "0.3" gloo-timers = { version = "0.3.0", features = ["futures"] } gloo-utils = { version = "0.2.0" } -http = { version = "1", optional = true } +http1 = { version = "1", optional = true, package = "http" } +http0_2 = { version = "0.2", optional = true, package = "http" } js-sys = "0.3" lazy_static = "1" -leptos = "0.6.0-beta" -leptos_axum = { version = "0.6.0-beta", optional = true } +leptos = "0.6" +leptos_axum = { version = "0.6", optional = true } num = { version = "0.4", optional = true } paste = "1" prost = { version = "0.12", optional = true } @@ -36,7 +37,7 @@ wasm-bindgen = "0.2.88" wasm-bindgen-futures = "0.4" [dependencies.web-sys] -version = "0.3.67" +version = "0.3" features = [ "AddEventListenerOptions", "BinaryType", @@ -104,13 +105,13 @@ features = [ ] [features] -actix = ["dep:actix-web"] -axum = ["dep:leptos_axum"] +actix = ["dep:actix-web", "dep:http0_2"] +axum = ["dep:leptos_axum", "dep:http1"] docs = [] math = ["num"] prost = ["base64", "dep:prost"] serde = ["dep:serde", "serde_json"] -ssr = ["dep:http"] +ssr = [] [package.metadata.docs.rs] all-features = true diff --git a/src/use_cookie.rs b/src/use_cookie.rs index 5c32b58..1cec388 100644 --- a/src/use_cookie.rs +++ b/src/use_cookie.rs @@ -43,9 +43,18 @@ pub fn use_cookie(cookie_name: &str) -> Option> { let cookies; #[cfg(feature = "ssr")] { - use http::HeaderValue; use leptos::expect_context; + #[cfg(feature = "actix")] + const COOKIE: http0_2::HeaderName = http0_2::header::COOKIE; + #[cfg(feature = "axum")] + const COOKIE: http1::HeaderName = http1::header::COOKIE; + + #[cfg(feature = "actix")] + type HeaderValue = http0_2::HeaderValue; + #[cfg(feature = "axum")] + type HeaderValue = http1::HeaderValue; + let headers; #[cfg(feature = "actix")] { @@ -53,10 +62,10 @@ pub fn use_cookie(cookie_name: &str) -> Option> { } #[cfg(feature = "axum")] { - headers = expect_context::().headers; + headers = expect_context::().headers; } cookies = headers - .get(http::header::COOKIE) + .get(COOKIE) .cloned() .unwrap_or_else(|| HeaderValue::from_static("")) .to_str()