
Security News
Crates.io Implements Trusted Publishing Support
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
express-html-sanitizer
Advanced tools
Express JS middleware to cleanup/sanitize json request body in express
express-html-sanitizer
provides a middleware for Express JS to cleanup/sanitize JSON
request body in express RESTful Service
or in any JSON
input containing unwanted HTML
tags.
express-html-sanitizer
uses excellent sanitize-html module recursively for sanitizing JSON
data with unwanted HTML
tags. You can put this middleware at root level to sanitize request body and provide a clean html sanitized payload for next middleware.
express-html-sanitizer
is intended for use with Express JS as a middleware. That's pretty much it. express-html-sanitizer
is built on the excellent sanitize-html
module.
Install module:
npm install express-html-sanitizer
Import the module:
const sanitizer = require('express-html-sanitizer')
Get the middleware:
const sanitizeReqBody = sanitizer();
you can make some configuration for allowed tags and other like exactly sanitize-html and pass it as argument to get configured middleware. For details configuration you can see sanitize-html module documentation.
config = {
allowedTags: [ 'b', 'i', 'em', 'strong', 'a' ],
allowedAttributes: {'a': [ 'href' ] },
allowedIframeHostnames: ['www.youtube.com']
}
const sanitizeReqBody = sanitizer(config);
Add a json body-parser
middleware
app.use(require('body-parser').json());
Now use it in your Express App
.
app.use(sanitizeReqBody);
const express = require('express');
const sanitizer = require('express-html-sanitizer');
const app = express();
//Make some custom configuration if you want(optional)
config = {
allowedTags: [ 'b', 'i', 'em', 'strong', 'a' ],
allowedAttributes: {'a': [ 'href' ] },
allowedIframeHostnames: ['www.youtube.com']
}
//Get the middleware
const sanitizeReqBody = sanitizer(config);
//Add body-parser middleware
app.use(require('body-parser').json());
//Add express-html-sanitizer middleware
app.use(sanitizeReqBody);
app.post('/post', (req, res, next) => {
//get sanitized req.body
})
app.listen(8080, ()=> {
console.log("Express server started");
})
Fell free to open issues on github
FAQs
Express JS middleware to cleanup/sanitize json request body in express
The npm package express-html-sanitizer receives a total of 673 weekly downloads. As such, express-html-sanitizer popularity was classified as not popular.
We found that express-html-sanitizer demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Research
/Security News
Undocumented protestware found in 28 npm packages disrupts UI for Russian-language users visiting Russian and Belarusian domains.
Research
/Security News
North Korean threat actors deploy 67 malicious npm packages using the newly discovered XORIndex malware loader.