(fetchParams)
| 60165 | response.body = safelyExtractBody(bytes)[0]; |
| 60166 | fetchFinale(fetchParams, response); |
| 60167 | }; |
| 60168 | await fullyReadBody(response.body, processBody, processBodyError); |
| 60169 | } else { |
| 60170 | fetchFinale(fetchParams, response); |
| 60171 | } |
| 60172 | } |
| 60173 | function schemeFetch(fetchParams) { |
| 60174 | if (isCancelled(fetchParams) && fetchParams.request.redirectCount === 0) { |
| 60175 | return Promise.resolve(makeAppropriateNetworkError(fetchParams)); |
| 60176 | } |
| 60177 | const { request: request3 } = fetchParams; |
| 60178 | const { protocol: scheme } = requestCurrentURL(request3); |
| 60179 | switch (scheme) { |
| 60180 | case "about:": { |
| 60181 | return Promise.resolve(makeNetworkError("about scheme is not supported")); |
| 60182 | } |
| 60183 | case "blob:": { |
| 60184 | if (!resolveObjectURL) { |
| 60185 | resolveObjectURL = require("buffer").resolveObjectURL; |
| 60186 | } |
| 60187 | const blobURLEntry = requestCurrentURL(request3); |
| 60188 | if (blobURLEntry.search.length !== 0) { |
| 60189 | return Promise.resolve(makeNetworkError("NetworkError when attempting to fetch resource.")); |
| 60190 | } |
| 60191 | const blobURLEntryObject = resolveObjectURL(blobURLEntry.toString()); |
| 60192 | if (request3.method !== "GET" || !isBlobLike3(blobURLEntryObject)) { |
| 60193 | return Promise.resolve(makeNetworkError("invalid method")); |
| 60194 | } |
| 60195 | const bodyWithType = safelyExtractBody(blobURLEntryObject); |
| 60196 | const body = bodyWithType[0]; |
| 60197 | const length = isomorphicEncode(`${body.length}`); |
| 60198 | const type2 = bodyWithType[1] ?? ""; |
| 60199 | const response = makeResponse({ |
| 60200 | statusText: "OK", |
| 60201 | headersList: [ |
| 60202 | ["content-length", { name: "Content-Length", value: length }], |
| 60203 | ["content-type", { name: "Content-Type", value: type2 }] |
| 60204 | ] |
| 60205 | }); |
| 60206 | response.body = body; |
| 60207 | return Promise.resolve(response); |
| 60208 | } |
| 60209 | case "data:": { |
| 60210 | const currentURL = requestCurrentURL(request3); |
| 60211 | const dataURLStruct = dataURLProcessor(currentURL); |
| 60212 | if (dataURLStruct === "failure") { |
| 60213 | return Promise.resolve(makeNetworkError("failed to fetch the data URL")); |
| 60214 | } |
| 60215 | const mimeType = serializeAMimeType(dataURLStruct.mimeType); |
| 60216 | return Promise.resolve(makeResponse({ |
| 60217 | statusText: "OK", |
| 60218 | headersList: [ |
| 60219 | ["content-type", { name: "Content-Type", value: mimeType }] |
| 60220 | ], |
| 60221 | body: safelyExtractBody(dataURLStruct.body)[0] |
| 60222 | })); |
| 60223 | } |
| 60224 | case "file:": { |
no test coverage detected
searching dependent graphs…