Skip to content

Commit 885bf18

Browse files
tsctxcrysmags
authored andcommitted
perf(cache): avoid Request and Response initialization (nodejs#2610)
1 parent 0104c2f commit 885bf18

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

lib/cache/cache.js

+5-2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ const { kHeadersList } = require('../core/symbols')
77
const { webidl } = require('../fetch/webidl')
88
const { Response, cloneResponse } = require('../fetch/response')
99
const { Request } = require('../fetch/request')
10+
const { Headers } = require('../fetch/headers')
1011
const { kState, kHeaders, kGuard, kRealm } = require('../fetch/symbols')
1112
const { fetching } = require('../fetch/index')
1213
const { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = require('../fetch/util')
@@ -502,8 +503,9 @@ class Cache {
502503

503504
// 5.4.2
504505
for (const request of requests) {
505-
const requestObject = new Request('https://a')
506+
const requestObject = new Request(kConstruct)
506507
requestObject[kState] = request
508+
requestObject[kHeaders] = new Headers(kConstruct)
507509
requestObject[kHeaders][kHeadersList] = request.headersList
508510
requestObject[kHeaders][kGuard] = 'immutable'
509511
requestObject[kRealm] = request.client
@@ -782,8 +784,9 @@ class Cache {
782784
// 5.5.2
783785
for (const response of responses) {
784786
// 5.5.2.1
785-
const responseObject = new Response(null)
787+
const responseObject = new Response(kConstruct)
786788
responseObject[kState] = response
789+
responseObject[kHeaders] = new Headers(kConstruct)
787790
responseObject[kHeaders][kHeadersList] = response.headersList
788791
responseObject[kHeaders][kGuard] = 'immutable'
789792

0 commit comments

Comments
 (0)