.
This commit is contained in:
+48
@@ -0,0 +1,48 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
Object.defineProperty(exports, "handleFetch", {
|
||||
enumerable: true,
|
||||
get: function() {
|
||||
return handleFetch;
|
||||
}
|
||||
});
|
||||
const _types = require("./types");
|
||||
function buildRequest(req) {
|
||||
const { request: proxyRequest } = req;
|
||||
const { url, headers, body, ...options } = proxyRequest;
|
||||
return new Request(url, {
|
||||
...options,
|
||||
headers: new Headers(headers),
|
||||
body: body ? Buffer.from(body, 'base64') : null
|
||||
});
|
||||
}
|
||||
async function buildResponse(response) {
|
||||
if (!response) {
|
||||
return _types.UNHANDLED;
|
||||
}
|
||||
if (response === 'abort') {
|
||||
return _types.ABORT;
|
||||
}
|
||||
if (response === 'continue') {
|
||||
return _types.CONTINUE;
|
||||
}
|
||||
const { status, headers, body } = response;
|
||||
return {
|
||||
api: 'fetch',
|
||||
response: {
|
||||
status,
|
||||
headers: Array.from(headers),
|
||||
body: body ? Buffer.from(await response.arrayBuffer()).toString('base64') : null
|
||||
}
|
||||
};
|
||||
}
|
||||
async function handleFetch(req, onFetch) {
|
||||
const { testData } = req;
|
||||
const request = buildRequest(req);
|
||||
const response = await onFetch(testData, request);
|
||||
return buildResponse(response);
|
||||
}
|
||||
|
||||
//# sourceMappingURL=fetch-api.js.map
|
||||
Reference in New Issue
Block a user