From b884082ba698a8ff6124d47b45be6655a065fd50 Mon Sep 17 00:00:00 2001 From: Kazuhito Yokoi Date: Wed, 7 Apr 2021 21:58:16 +0900 Subject: [PATCH 1/2] Add host and schemes fields into swagger --- swagger/swagger.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/swagger/swagger.js b/swagger/swagger.js index 28d06be..bff1446 100644 --- a/swagger/swagger.js +++ b/swagger/swagger.js @@ -37,11 +37,22 @@ module.exports = function(RED) { RED.httpNode.get("/http-api/swagger.json", (req, res) => { const { + uiHost, + uiPort, httpNodeRoot, - swagger: { parameters: additionalParams = [], template: resp = { ...DEFAULT_TEMPLATE } } = {} + https, + swagger: { parameters: additionalParams = [], template: template = {} } = {} } = RED.settings; + const resp = { ...DEFAULT_TEMPLATE, ...template }; + resp.info = { ...DEFAULT_TEMPLATE.info, ...template.info }; + if (!resp.host) { + resp.host = (uiHost === "0.0.0.0" ? "127.0.0.1" : uiHost) + ":" + uiPort; + } const { basePath = httpNodeRoot } = resp; resp.basePath = stripTerminalSlash(basePath); + if (!resp.schemes) { + resp.schemes = https ? ["https"] : ["http"]; + } resp.paths = {}; RED.nodes.eachNode(node => { From 67c049661b5662be7fb3a4b5217c246c4def181f Mon Sep 17 00:00:00 2001 From: Kazuhito Yokoi Date: Tue, 8 Jun 2021 14:40:09 +0900 Subject: [PATCH 2/2] Support CORS for swagger endpoint --- swagger/swagger.js | 1 + 1 file changed, 1 insertion(+) diff --git a/swagger/swagger.js b/swagger/swagger.js index bff1446..c4ee0c6 100644 --- a/swagger/swagger.js +++ b/swagger/swagger.js @@ -94,6 +94,7 @@ module.exports = function(RED) { }; } }); + res.header("Access-Control-Allow-Origin", "*"); res.json(resp); });