UNPKG

serverless-offline-edge-lambda

Version:

A plugin for the Serverless Framework that simulates the behavior of AWS CloudFront Edge Lambdas while developing offline.

29 lines 1.29 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.convertToCloudFrontEvent = void 0; const fs_1 = __importDefault(require("fs")); const url_1 = require("url"); const convert_headers_1 = require("./convert-headers"); function readInjectedHeadersFile(injectedHeadersFile) { const headers = fs_1.default.readFileSync(injectedHeadersFile, 'utf8'); return JSON.parse(headers); } function convertToCloudFrontEvent(req, config, injectedHeadersFile) { const url = (0, url_1.parse)(req.url, false); const injectedHeaders = injectedHeadersFile ? readInjectedHeadersFile(injectedHeadersFile) : {}; const request = { clientIp: req.socket.remoteAddress, method: req.method, headers: (0, convert_headers_1.toCloudFrontHeaders)(Object.assign(Object.assign({}, req.headers), injectedHeaders)), uri: url.pathname, querystring: url.query || '', body: req.body, cookies: req.cookies }; return { Records: [{ cf: { config, request } }] }; } exports.convertToCloudFrontEvent = convertToCloudFrontEvent; //# sourceMappingURL=convert-to-cf-event.js.map