From f7cff09908449f3fdabe8f2b5d405a742dda2800 Mon Sep 17 00:00:00 2001 From: Kai Vandivier Date: Mon, 7 Apr 2025 21:57:43 +0200 Subject: [PATCH] fix: add headers to prevent avoid faulty redirects to global shell --- pwa/src/service-worker/set-up-service-worker.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pwa/src/service-worker/set-up-service-worker.js b/pwa/src/service-worker/set-up-service-worker.js index 5fb7f091a..0317c6557 100644 --- a/pwa/src/service-worker/set-up-service-worker.js +++ b/pwa/src/service-worker/set-up-service-worker.js @@ -104,7 +104,15 @@ export function setUpServiceWorker() { // Above, the index entry had the redirect param added: const indexUrl = process.env.PUBLIC_URL + '/index.html?redirect=false' const navigationRouteHandler = ({ request }) => { - return fetch(request) + let requestToUse = request + // If in an iframe, set custom header to let the backend know not to + // redirect this request to the global shell + if (request.destination === 'iframe') { + const newHeaders = new Headers(request.headers) + newHeaders.append('X-Requested-With', 'iframe') + requestToUse = new Request(request, { headers: newHeaders }) + } + return fetch(requestToUse) .then((response) => { if (response.type === 'opaqueredirect' || !response.ok) { // It's sending a redirect to the login page,