Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
express-busboy
Advanced tools
A simple body-parser
like module for express that
uses connect-busboy
under the hood.
It's designed to be more of a "drop in" replacement for body-parser
.
With it populating req.body
, there is very minimal code change needed to use it.
import bb from 'express-busboy';
const app = express();
bb.extend(app);
The module will populate req.body
and req.files
like the body-parser
module does.
bb.extend(app, {
//options can go here
});
By default this module will create an Array
when it finds multiple fields with the
same name in the POST parameters. You can set restrictMultiple
to true
to
not parse mutiple POST values into Array
's
By default file uploads are disabled, the req.files
object will always be empty. You can activate them with:
bb.extend(app, {
upload: true,
path: '/path/to/save/files',
allowedPath: /./
});
path
will default to: os.tmpdir()/express-busboy/<uuid>/<the field name>/<filename>
.
allowedPath
can contain a regular expression limiting the upload function to given urls. For example /^\/upload$/
would only allow uploads in the /upload path.
You can have a function returning true/false if you prefer that:
options.allowedPath = function(url) {
return url == '/upload';
}
You can restrict uploads to specific mimetypes as well:
options.mimeTypeLimit = [
'text/x-markdown',
'application/javascript',
'image/jpeg',
'image/png'
];
Name and filename inputs will be sanitized into an MD5 hash before determining path for the file on disk. If you want to change this behavior you can provide a strip function of your own:
// this will not sanitize the inputs
options.strip = function(value, type) {
return value;
}
When files are not uploaded due to path or mimetype checks, no error is returned (so the other data in the request can be handled) the restricted item will simply not appear in the req.files
Object
.
FAQs
Busboy for express, mimics the old bodyParser
We found that express-busboy demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.