From c87cebba36c40d9d751d8790088fd15dfb7da573 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Tue, 10 Mar 2026 22:01:39 +0100 Subject: [PATCH] feat(clickTtHttpPageRoutes): add base tag handling for relative URLs in proxy response - Implemented logic to dynamically insert a base tag in the HTML response for relative URLs, ensuring proper resolution of form actions during login. - Enhanced the existing proxy route to improve handling of HTML content fetched from target URLs. --- backend/routes/clickTtHttpPageRoutes.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/backend/routes/clickTtHttpPageRoutes.js b/backend/routes/clickTtHttpPageRoutes.js index f195ba57..25f606a7 100644 --- a/backend/routes/clickTtHttpPageRoutes.js +++ b/backend/routes/clickTtHttpPageRoutes.js @@ -104,6 +104,13 @@ router.get('/proxy', async (req, res, next) => { .replace(/]*http-equiv=["']x-frame-options["'][^>]*>/gi, '') .replace(/]*http-equiv=["']x-content-type-options["'][^>]*>/gi, ''); + // Base-Tag: Relative URLs (z.B. Formular-Actions beim Login) müssen zur Original-Domain auflösen + const pageOrigin = (() => { try { return new URL(targetUrl).origin + '/'; } catch { return null; } })(); + if (pageOrigin) { + html = html.replace(/]*>/gi, ''); + html = html.replace(/]*)>/i, ``); + } + // Links umschreiben: Klicks im iframe laufen über unseren Proxy → Folge-Logs // URL aus .env (BACKEND_BASE_URL oder BASE_URL), Fallback: Request-Host const baseUrl = process.env.BACKEND_BASE_URL || process.env.BASE_URL