UNPKG

aws4-express

Version:

Express middleware handlers for validation AWS Signature V4

50 lines 1.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.rawBodyBufferFromStream = exports.rawBodyBufferFromStreamEncoding = exports.rawBodyFromStream = exports.rawBodyFromStreamEncoding = exports.rawBodyFromVerify = void 0; /* These handler are sugested way to fill req.rawBody with data. You can use own with library as long as you fill req.rawBody with data. */ const rawBodyFromVerify = (req, _res, buf, _encoding) => { req.rawBody = buf; }; exports.rawBodyFromVerify = rawBodyFromVerify; const rawBodyFromStreamEncoding = (encoding = 'utf8') => (req, _res, next) => { if (req.rawBody) { return next(); } req.rawBody = ''; req.setEncoding(encoding); req.on('data', (chunk) => { req.rawBody += chunk; }); req.on('end', () => { next(); }); req.on('error', () => { next(); }); }; exports.rawBodyFromStreamEncoding = rawBodyFromStreamEncoding; exports.rawBodyFromStream = (0, exports.rawBodyFromStreamEncoding)('utf8'); const rawBodyBufferFromStreamEncoding = (encoding = 'utf8') => (req, _res, next) => { if (req.rawBody) { return next(); } const chunks = []; req.setEncoding(encoding); req.on('data', (chunk) => { // Konwertujemy string na Buffer chunks.push(Buffer.from(chunk, encoding)); }); req.on('end', () => { req.rawBody = Buffer.concat(chunks); next(); }); req.on('error', (err) => { next(err); }); }; exports.rawBodyBufferFromStreamEncoding = rawBodyBufferFromStreamEncoding; exports.rawBodyBufferFromStream = (0, exports.rawBodyBufferFromStreamEncoding)('utf8'); //# sourceMappingURL=rawBody.js.map