diff --git a/functions/api/[[path]].ts b/functions/api/[[path]].ts index 57291ec60f..4ec6873720 100644 --- a/functions/api/[[path]].ts +++ b/functions/api/[[path]].ts @@ -1,25 +1,37 @@ //this is purely for cloudflare pages redirection purposes export async function onRequest(context) { - // Contents of context object - const { - request, // same as existing Worker API - env, // same as existing Worker API - params, // if filename includes [id] or [[path]] - waitUntil, // same as ctx.waitUntil in existing Worker API - next, // used for middleware or to fetch assets - data, // arbitrary space for passing data between middlewares - } = context - - try { - const url = new URL(request.url) - url.hostname = "app.windmill.dev" - const res = await fetch(url.toString(), { method: request.method, body: request.body, headers: request.headers, redirect: 'manual' }) - const newResponse = new Response(res.body, res); - newResponse.headers.set('set-cookie', newResponse.headers.get('set-cookie')?.replace('Domain=windmill.dev;', '') ?? '') - return newResponse - } catch (e) { - return new Response(e.message, { status: 500 }) - } + // Contents of context object + const { + request, // same as existing Worker API + env, // same as existing Worker API + params, // if filename includes [id] or [[path]] + waitUntil, // same as ctx.waitUntil in existing Worker API + next, // used for middleware or to fetch assets + data, // arbitrary space for passing data between middlewares + } = context; + try { + const url = new URL(request.url); + url.hostname = "app.windmill.dev"; + const res = await fetch(url.toString(), { + method: request.method, + body: request.body, + headers: request.headers, + redirect: "manual", + }); + const newResponse = new Response(res.body, res); + newResponse.headers.set( + "set-cookie", + "token" + + newResponse.headers + .get("set-cookie") + ?.replace("Domain=windmill.dev;", "") + ?.split("token") + .pop() ?? "" + ); + return newResponse; + } catch (e) { + return new Response(e.message, { status: 500 }); + } }