Content-Type Cloudflare

addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)) }) /** * @param {Request} request */ async function handleRequest(request) { const response = await fetch(request) var headers = new Headers(); for (var kv of response.headers.entries()) { headers.append(kv[0], kv[1]); } const url = request.url headers.set("Content-Type", get_content_type(url)) headers.set("x-julia-test", "edited headers!") response.headers = headers return new Response(response.body, { status: response.status, statusText: response.statusText, headers: headers}) return response } function get_content_type(url) { if (url.endsWith(".svg")) { return "image/svg+xml" } else if (url.endsWith(".png")) { return "image/png" } else if (url.endsWith(".jpg")) { return "image/jpg" } else if (url.endsWith(".css")) { return "text/css" } else if (url.endsWith(".pdf")) { return "application/pdf" } else if (url.endsWith(".js")) { return "application/javascript" } else if (url.endsWith(".json")) { return "application/json" } else if (url.endsWith(".xml")) { return "text/xml" } else if (url.endsWith(".txt")) { return "text/plain; charset=UTF-8" } else if (url.endsWith(".webmanifest")) { return "application/manifest+json" } else { return "text/html; charset=UTF-8" } }

Public Last updated: 2021-07-31 07:09:15 AM