Add support of NC-Token to Nextcloud widget

This commit is contained in:
Mirek Szajowski 2023-03-20 01:15:40 +01:00
parent b488d6a13c
commit 94dc5ad0e5
2 changed files with 11 additions and 3 deletions

View File

@ -48,6 +48,14 @@ export default async function credentialedProxyHandler(req, res, map) {
headers.Authorization = `Token ${widget.key}`; headers.Authorization = `Token ${widget.key}`;
} else if (widget.type === "miniflux") { } else if (widget.type === "miniflux") {
headers["X-Auth-Token"] = `${widget.key}`; headers["X-Auth-Token"] = `${widget.key}`;
} else if (widget.type === "nextcloud") {
if ('key' in widget) {
logger.debug("Setting nextcloud to use NC-Token");
headers["NC-Token"] = `${widget.key}`;
} else {
logger.debug("Setting nextcloud to use username", widget.username);
headers.Authorization = `Basic ${Buffer.from(`${widget.username}:${widget.password}`).toString("base64")}`;
}
} else { } else {
headers["X-API-Key"] = `${widget.key}`; headers["X-API-Key"] = `${widget.key}`;
} }

View File

@ -1,8 +1,8 @@
import genericProxyHandler from "utils/proxy/handlers/generic"; import credentialedProxyHandler from "utils/proxy/handlers/credentialed";
const widget = { const widget = {
api: "{url}/{endpoint}", api: "{url}/{endpoint}",
proxyHandler: genericProxyHandler, proxyHandler: credentialedProxyHandler,
mappings: { mappings: {
serverinfo: { serverinfo: {