UNPKG

rexuws

Version:

An express-like framework built on top of uWebsocket.js aims at simple codebase and high performance

39 lines (38 loc) 1.07 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.bodyParser = exports.parse = void 0; const qs_1 = __importDefault(require("qs")); const parse = (ct, raw) => { if (ct.startsWith('application/json') || ct === 'text/json') { const json = JSON.parse(raw); return json; } if (ct === 'application/octet-stream') { return raw; } if (ct.startsWith('text/')) { return raw.toString(); } if (ct === 'application/x-www-form-urlencoded') { return qs_1.default.parse(raw.toString()); } return raw; }; exports.parse = parse; const bodyParser = (req, _, next) => { const ct = req.header('content-type'); if (!req.raw || !ct) { return next(); } try { req.body = exports.parse(ct, req.raw); return next(); } catch (err) { return next(err); } }; exports.bodyParser = bodyParser;