string-replace-middleware
Advanced tools
Weekly downloads
Readme
A middleware for Express that allows for stream-based string replacement before sending responses.
Install in your Express project using:
npm install --save string-replace-middleware
After installing, you can add it as a middleware to your project and hand over a map of replacements. To replace every occurence of foo
with bar
.
const express = require('express');
const { stringReplace } = require('string-replace-middleware');
const app = express();
app.use(stringReplace({
'foo': 'bar',
}));
app.listen(3000);
Use it to serve static files with replacements like in this example:
const express = require('express');
const serveStatic = require('serve-static');
const { stringReplace } = require('string-replace-middleware');
const app = express();
app.use(stringReplace({
'foo': 'bar',
}));
app.use(serveStatic('public'));
app.listen(3000);
The Content-Type header of responses is checked against a regex before modification. The regex is configurable by passing in an options object like this:
const options = {
contentTypeFilterRegexp: /^text\/|^application\/json$|^application\/xml$/,
}
app.use(stringReplace({
'foo': 'bar',
}, options));
The default regex is /^text\/|^application\/json$|^application\/xml$/
, which will match text/*
, application/json
, and application/xml
. Any response with a Content-Type header that doesn't match the regex is ignored and passed-through without modification.
Also any response without a Content-Type header is ignored and passed-through without any modification.
FAQs
Express middleware to replace strings in response stream on the fly
The npm package string-replace-middleware receives a total of 584 weekly downloads. As such, string-replace-middleware popularity was classified as not popular.
We found that string-replace-middleware 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 installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.