// 添加fetch事件监听器,当有请求进入时触发,使用handleRequest函数处理请求,并返回响应async function handleRequest(request) {// 定义目标外部主机名const yourExternalHostname = "www.example.com";// 创建路径到重定向URL的映射const redirectMap = new Map([["/foo", "https://" + yourExternalHostname + "/redirect1"],["/bar", "https://" + yourExternalHostname + "/redirect2"],["/baz", "https://" + yourExternalHostname + "/redirect3"],]);// 解析请求的URLconst url = new URL(request.url);// 获取URL的路径部分const path = url.pathname;// 检查路径是否在重定向映射中,如果是则进行重定向if (redirectMap.has(path)) {return Response.redirect(redirectMap.get(path), 301);} else {// 如果路径不在映射中,返回404状态return new Response('Not Found', { status: 404 });}}// 当有请求事件发生时,使用handleRequest函数处理addEventListener('fetch', event => {event.respondWith(handleRequest(event.request));});
https://www.example.com/redirect2
文档反馈