This topic provides sample code that shows how to modify the requested URL and redirect to the new URL.

Sample code

const base = "https://demo.aliyundoc.com/"
const statusCode = 301

async function handleRequest(request) {
  const url = new URL(request.url)
  const { pathname, search } = url

  const destinationURL = base + pathname + search

  return Response.redirect(destinationURL, statusCode)
}

addEventListener("fetch", async event => {
  event.respondWith(handleRequest(event.request))
})

Result

The requested URL is replaced by EdgeRoutine with the domain name demo.aliyundoc.com. A 301 HTTP status code is returned.