Add support for httpStaticCors

pull/4761/head
Nick O'Leary 2024-06-14 15:18:40 +01:00
parent 10398b05d8
commit 48a2876c48
No known key found for this signature in database
GPG Key ID: 4F2157149161A6C9
2 changed files with 9 additions and 0 deletions

View File

@ -37,6 +37,7 @@
"@node-red/nodes": "4.0.0-beta.4",
"basic-auth": "2.0.1",
"bcryptjs": "2.4.3",
"cors": "2.8.5",
"express": "4.19.2",
"fs-extra": "11.2.0",
"node-red-admin": "^3.1.3",

View File

@ -44,6 +44,8 @@ var nopt = require("nopt");
var path = require("path");
const os = require("os")
var fs = require("fs-extra");
const cors = require('cors');
var RED = require("./lib/red.js");
var server;
@ -441,10 +443,16 @@ httpsPromise.then(function(startupHttps) {
const thisRoot = sp.root || "/";
const options = sp.options;
const middleware = sp.middleware;
const corsOptions = sp.cors || settings.httpStaticCors;
if(appUseMem[filePath + "::" + thisRoot]) {
continue;// this path and root already registered!
}
appUseMem[filePath + "::" + thisRoot] = true;
if (corsOptions) {
const corsHandler = cors(corsOptions);
app.options(thisRoot, corsHandler)
app.use(thisRoot, corsHandler)
}
if (settings.httpStaticAuth) {
app.use(thisRoot, basicAuthMiddleware(settings.httpStaticAuth.user, settings.httpStaticAuth.pass));
}