Skip to content

Follow redirects from the origin

Modify the fetch request to follow redirects from the origin, ensuring the client receives the final response.

export default {
async fetch(request) {
// Define fetch options to follow redirects
const fetchOptions = {
redirect: "follow", // Ensure fetch follows redirects automatically. Each subrequest in a redirect chain counts against the subrequest limit.
};
// Make the fetch request to the origin
const response = await fetch(request, fetchOptions);
// Log the final URL after redirects (optional, for debugging)
console.log(`Final URL after redirects: ${response.url}`);
// Return the final response to the client
return response;
},
};

This template is ready for use and should fit most redirect-following scenarios.

It ensures the Snippet transparently follows redirects issued by the origin server. The redirect: "follow" option of the Fetch API ensures automatic handling of 3xx redirects, returning the final response. If the origin response is not a redirect, the original content is returned.