Para limitar el tamaño de la solicitud a 123 bytes, uso lo siguiente que funciona bien:
app.use(bodyParser.urlencoded({ extended: true, limit: 123 }));Para analizar todas las solicitudes excepto "/specialRequest", utilizo lo siguiente, que también funciona bien:
app.use(/^(?!\/specialRequest)/,bodyParser.urlencoded({ extended: true }));Pero no puedo limitar el tamaño de solicitud de todas las solicitudes a 123 y analizar todas las solicitudes excepto "/ specialRequest". Aquí está mi código actual:
app.use(/^(?!\/specialRequest)/,bodyParser.urlencoded({ extended: true, limit: 123 }));Sin embargo, esto solo limita el tamaño de las solicitudes para solicitudes diferentes a "/specialRequest". ¿Cómo puedo limitar el tamaño de solicitud de todas las solicitudes a 123 y analizar todas las solicitudes excepto "/specialRequest"?
Si desea que el cuerpo de la solicitud para /specialRequest tenga un tamaño limitado pero no se analice, puede usar bodyParser.raw() . En ese caso, req.body será una instancia de Buffer que contiene el cuerpo de la solicitud tal cual (sin analizar, aunque se inflará si se presentó como datos comprimidos o desinflados; este comportamiento se puede desactivar a través de sus opciones).
Debe declararlo antes de insertar el middleware bodyParser.urlencoded() :
app.post('/specialRequest', bodyParser.raw({ limit : 123, type : '*/*' }), function(req, res) { ... }); app.use(bodyParser.urlencoded({ extended: true, limit: 123 }));