本文介绍修改URL并重定向示例场景及结果。

代码

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))
})

结果

请求的URL被边缘程序替换成了demo.aliyundoc.com域名并返回301重定向。