- main
- manifest
- deps
- main
- Install
- Run
addEventListener("fetch", event => event.respondWith(handler(event)));
const handler = async (event) => {
const originalReq = event.request;
let contentType = originalReq.headers.get("Sec-Fetch-Dest");
let url = new URL(originalReq.url);
let stripQuery = (contentType && contentType.match(/^(audio|audioworklet|embed|font|image|manifest|object|paintworklet|script|sharedworker|style|track|video|worker|xslt)$/))
|| url.pathname.match(/\.(jpe?g|gif|png|webp|css|)$/);
if (stripQuery) {
console.log('Removing query string from URL ' + url);
url.search = new URLSearchParams();
console.log('URL forwarded to origin is ' + url);
}
const newReq = new Request(
url.toString(),
originalReq
);
const backendResponse = await fetch(newReq, {
backend: "origin_0"
});
return backendResponse;
};