16 lines
483 B
JavaScript
16 lines
483 B
JavaScript
export default {
|
|
async fetch(request, env) {
|
|
const response = await env.ASSETS.fetch(request);
|
|
const acceptsHtml = request.headers.get("accept")?.includes("text/html");
|
|
|
|
if (response.status !== 404 || !acceptsHtml || !["GET", "HEAD"].includes(request.method)) {
|
|
return response;
|
|
}
|
|
|
|
const indexUrl = new URL(request.url);
|
|
indexUrl.pathname = "/index.html";
|
|
indexUrl.search = "";
|
|
return env.ASSETS.fetch(new Request(indexUrl, request));
|
|
},
|
|
};
|