@@ -14,6 +14,8 @@ use crate::native_http1_proxy_cache_slice::{
1414 native_slice_cache_key, native_slice_identity, native_slice_not_satisfiable_response,
1515 native_slice_object_from_entry, native_slice_request_within_policy,
1616} ;
17+ #[ cfg( feature = "wasm" ) ]
18+ use crate :: native_http1_proxy_memory_cache:: NativeProxyCacheKeyComponent ;
1719use crate :: { NativeHttp1Request , NativeHttp1Response } ;
1820use fluxheim_cache:: {
1921 CacheRequestView , CacheSliceBounds , request_cache_bypass_reason, resolve_client_slice_ranges,
@@ -27,17 +29,24 @@ impl NativeProxyMemoryCache {
2729 & self ,
2830 request : & NativeHttp1Request ,
2931 proxy : & NativeHttp1Proxy ,
32+ #[ cfg( feature = "wasm" ) ] key_components : & [ NativeProxyCacheKeyComponent ] ,
3033 ) -> Option < NativeCacheSliceResponse > {
3134 if !self . config . range . enabled || !self . config . range . slice . enabled {
3235 return None ;
3336 }
37+ let base_key = self . key_with_components (
38+ request,
39+ #[ cfg( feature = "wasm" ) ]
40+ key_components,
41+ #[ cfg( not( feature = "wasm" ) ) ]
42+ & [ ] ,
43+ ) ?;
3444 if request_cache_bypass_reason ( request, & self . config ) . is_some ( )
35- || self . cache_pass_should_bypass ( & self . key ( request ) ? )
45+ || self . cache_pass_should_bypass ( & base_key )
3646 {
3747 return None ;
3848 }
3949 let slice_request = selected_cache_slice_range_request ( request, & self . config ) ?;
40- let base_key = self . key ( request) ?;
4150 let slice_size = self . config . range . slice . size_bytes . as_u64 ( ) ;
4251 let ( total, first_slice, first_filled) = self
4352 . discover_slice_total ( & base_key, request, proxy, slice_size)
0 commit comments