@chaseleto/sessions-sdk
Version:
Privacy-conscious session recording SDK for self-hosted session tracking
72 lines • 1.6 kB
TypeScript
import { NetworkRequest, NetworkCallback } from './types';
export declare class NetworkLogger {
private originalFetch;
private originalXHROpen;
private originalXHRSend;
private requests;
private callback?;
private maxRequests;
private requestMap;
constructor();
/**
* Start capturing network requests
*/
start(callback?: NetworkCallback): void;
/**
* Stop capturing network requests
*/
stop(): void;
/**
* Get captured requests
*/
getRequests(): NetworkRequest[];
/**
* Clear captured requests
*/
clear(): void;
/**
* Patch fetch API
*/
private patchFetch;
/**
* Patch XMLHttpRequest
*/
private patchXHR;
/**
* Restore original fetch
*/
private restoreFetch;
/**
* Restore original XHR methods
*/
private restoreXHR;
/**
* Capture a network request
*/
private captureRequest;
/**
* Extract headers from Headers object
*/
private extractHeaders;
/**
* Extract headers from XMLHttpRequest
*/
private extractXHRHeaders;
/**
* Extract request body
*/
private extractRequestBody;
/**
* Extract response body metadata (not the full body)
*/
private extractResponseBody;
/**
* Get a small sample of XHR response content for debugging
*/
private getXHRResponseSample;
/**
* Get a small sample of response content for debugging
*/
private getResponseSample;
}
//# sourceMappingURL=network-logger.d.ts.map