123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
-
- /*
- * Adds req.cookie
- */
- function cookies(req, res, cb) {
- req.cookies = {};
-
- if (!req.headers.cookie)
- return cb();
-
- req.headers.cookie.split(/;\s+/).forEach(cookie => {
- var parts = cookie.split("=");
- req.cookies[parts.shift()] = parts.join("=");
- });
-
- cb();
- }
-
- /*
- * Adds req.params from URL parameters
- */
- function params(req, res, cb) {
- req.params = {};
-
- if (!req.urlobj.query)
- return cb();
-
- req.urlobj.query.split("&").forEach(param => {
- var parts = param.split("=");
- req.params[parts.shift()] = parts.join("=") || true;
- });
-
- cb();
- }
-
- /*
- * Add req.payload
- */
- function payload(req, res, cb, app) {
- var max = 50 * 1000;
- req.payload = "";
-
- var warned = false;
- req.on("data", d => {
- if (!warned && req.payload.length + d.length > max) {
- app.warning("Payload with length above "+max+" bytes ignored.");
- return cb();
- }
-
- req.payload += d;
- });
- req.on("end", () => {
- if (!warned)
- cb();
- });
- }
-
- exports.cookies = cookies;
- exports.params = params;
- exports.payload = payload;
|