Skip to content

Commit

Permalink
fix cloudflare preview
Browse files Browse the repository at this point in the history
  • Loading branch information
rubenfiszel committed Apr 27, 2023
1 parent 149e6e9 commit 5b55c33
Showing 1 changed file with 32 additions and 20 deletions.
52 changes: 32 additions & 20 deletions functions/api/[[path]].ts
Original file line number Diff line number Diff line change
@@ -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 });
}
}

0 comments on commit 5b55c33

Please sign in to comment.