Express middleware for the sanitizer module.
npm install express-sanitizer




Notice: The primary dependency for this library hasn't been updated in 5 years. Before using this library, consider other options such as express-validator.
An express middleware for Caja-HTML-Sanitizer, which wraps Google Caja sanitizer.
A useful complement to the express-validator -- to fill a gap now that XSS sanitization support has been removed from that module's parent node-validator.
```
yarn add express-sanitizer
or
``
npm install --save express-sanitizer
Import the module
`javascript`
const expressSanitizer = require('express-sanitizer');
Mount the middleware below the express.json() (or, prior to express v4.16, bodyParser()) instantiation and above mounting of your routes
`javascript
app.use(express.json());
// Mount express-sanitizer middleware here
app.use(expressSanitizer());
app.post('/', function(req, res, next) {
// replace an HTTP posted body property with the sanitized string
const sanitizedString = req.sanitize(req.body.propertyToSanitize);
// send the response -- res.body.sanitized = " world"
res.send({ sanitized: sanitizedString });
});
`
The string
`javascript``
' world'
will be sanitized to ' world'.
This is a basic implementation of Caja-HTML-Sanitizer with the specific purpose of mitigating against persistent XSS risks (note the borderline abandonware comments in that repo!).
This module trusts the dependencies to provide basic persistent XSS risk mitigation. A user of this package should review all packages and make their own decision on security and fitness for purpose.
- Mark Andrews <20metresbelow@gmail.com>
- Patrick Hogan
- Scott Ramsden @ScottRamsden
- Brian M. Jemilo II
Copyright (c) 2021 Mark Andrews <20metresbelow@gmail.com>, MIT License