Express-style middleware to process SSI directives.
The #include
supports both static files and virtual paths which are fetched via HTTP(S).
<html>
<!--#include file="/static.txt"-->
<!--#include virtual="/dynamic"-->
</html>
Other ssi instructions supported via node-ssi
See the basic usage example below. In order to resolve static files the baseDir
option has to be provided, respectively baseUrl
to resolve virtual paths.
import express from 'express';
import { ssi } from '@ln-e/ssi-middleware';
const app = express();
const port = 3000;
app.use(ssi({
baseDir: `${__dirname}/public`,
baseUrl: `http://localhost:${port}`,
request: {
// See https://npmjs.com/package/request for options.
// This enables the use of self-signed certificates:
strictSSL: false
},
payloadFn: (req, res) => {
return { GEO: req.headers.COUNTY_BY_IP };
}
}));
app.listen(port);
MIT