マップオブジェクトに基づくバルクリダイレクト
マッピングされたオブジェクトに基づいて、リクエストのURLに対して特定のURLにリクエストをリダイレクトします。
export default { async fetch(request) { // リダイレクトする必要があるホスト名を定義します。 const externalHostname = "example.com";
// マップオブジェクトを定義します。ソース(/pathX)とターゲット(/redirectX)を適用するものに置き換えてください。 const redirectMap = new Map([ ["/path1", "https://" + externalHostname + "/redirect1"], ["/path2", "https://" + externalHostname + "/redirect2"], ["/path3", "https://" + externalHostname + "/redirect3"], ["/path4", "https://cloudflare.com"], ]);
// 元のURLをクローンします。 const requestURL = new URL(request.url);
// マップに対してリクエストパスをチェックし、それに応じてリダイレクトします。 const path = requestURL.pathname; const location = redirectMap.get(path);
if (location) { return Response.redirect(location, 301); }
// リクエストパスがマップにない場合、元のリクエストを返します。 return fetch(request); },};