@@ -292,6 +292,10 @@ export class NetworkRequest {
292
292
this . #responseReceivedExtraInfoEvent = undefined ;
293
293
}
294
294
295
+ const headers = NetworkRequest . #getHeaders(
296
+ this . #responseReceivedEvent. response . headers
297
+ ) ;
298
+
295
299
return {
296
300
method : Network . EventNames . ResponseCompletedEvent ,
297
301
params : {
@@ -307,13 +311,10 @@ export class NetworkRequest {
307
311
this . #responseReceivedEvent. response . fromDiskCache ||
308
312
this . #responseReceivedEvent. response . fromPrefetchCache ||
309
313
this . #servedFromCache,
310
- headers : NetworkRequest . #getHeaders(
311
- this . #responseReceivedEvent. response . headers
312
- ) ,
314
+ headers,
313
315
mimeType : this . #responseReceivedEvent. response . mimeType ,
314
316
bytesReceived : this . #responseReceivedEvent. response . encodedDataLength ,
315
- headersSize :
316
- this . #responseReceivedExtraInfoEvent?. headersText ?. length ?? 0 ,
317
+ headersSize : this . #computeResponseHeadersSize( headers ) ,
317
318
// TODO: consider removing from spec.
318
319
bodySize : 0 ,
319
320
content : {
@@ -325,6 +326,12 @@ export class NetworkRequest {
325
326
} ;
326
327
}
327
328
329
+ #computeResponseHeadersSize( headers : Network . Header [ ] ) : number {
330
+ return headers . reduce ( ( total , header ) => {
331
+ return total + header . name . length + ( header . value ?. length ?? 0 ) + 4 ; // 4 = ': ' + '\r\n'
332
+ } , 0 ) ;
333
+ }
334
+
328
335
#isIgnoredEvent( ) : boolean {
329
336
return (
330
337
this . #requestWillBeSentEvent?. request . url . endsWith ( '/favicon.ico' ) ??
0 commit comments