pub struct ServiceWorkerFetchEvent {
pub registration_id: ServiceWorkerRegistrationId,
pub request_url: String,
pub method: String,
pub stealth_profile_applied: bool,
}Expand description
A ServiceWorker fetch interception event observed by the bao layer.
When a ServiceWorker intercepts a fetch request (DF-WK-8), this struct captures the metadata for stealth boundary verification and CDP observability.
Per SPEC criterion #19: “SW 拦截并转发的 fetch 仍走主页同一 stealth TLS(JA3/JA4)+HTTP2(AKAMAI) profile (不绕过反指纹)”
@trace REQ-BRW-004 [entity:ServiceWorker] [criterion:19] DF-WK-8
Fields§
§registration_id: ServiceWorkerRegistrationIdWhich ServiceWorker registration intercepted this fetch.
request_url: StringThe URL of the intercepted request.
method: StringThe HTTP method of the intercepted request.
stealth_profile_applied: boolWhether the stealth profile was correctly applied to the outgoing fetch. Per SPEC criterion #19: SW-intercepted fetch must use the same TLS(JA3/JA4)/HTTP2(AKAMAI) profile as the registering page. This field is set to true when the stealth layer confirms the profile matches; false indicates a stealth boundary violation. @trace REQ-BRW-004 [entity:ServiceWorker] [criterion:19]
Trait Implementations§
Source§impl Clone for ServiceWorkerFetchEvent
impl Clone for ServiceWorkerFetchEvent
Source§fn clone(&self) -> ServiceWorkerFetchEvent
fn clone(&self) -> ServiceWorkerFetchEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for ServiceWorkerFetchEvent
impl RefUnwindSafe for ServiceWorkerFetchEvent
impl Send for ServiceWorkerFetchEvent
impl Sync for ServiceWorkerFetchEvent
impl Unpin for ServiceWorkerFetchEvent
impl UnsafeUnpin for ServiceWorkerFetchEvent
impl UnwindSafe for ServiceWorkerFetchEvent
Blanket Implementations§
Source§impl<T> AsCtxPtr for Twhere
T: ?Sized,
impl<T> AsCtxPtr for Twhere
T: ?Sized,
Source§fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
fn as_ctx_ptr(&self) -> *mut Selfwhere
Self: Sized,
self’s address as *mut Self for deferred-task / scopeguard /
ref_guard ctx slots. The closures/trampolines deref it as shared
(&*p) — every method they reach is &self post-R-2, so no write
provenance is required; the *mut spelling is purely to match the
existing DerefOnDrop / HasAutoFlush / RefCount ABI.Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more