export default { async fetch(request, env) { const url = new URL(request.url); // API 代理 if (url.pathname.startsWith('/admin-api')) { const targetUrl = `https://apidev.ifoodme.com${url.pathname}${url.search}`; const headers = new Headers(request.headers); headers.delete('host'); const response = await fetch(targetUrl, { method: request.method, headers: headers, body: request.method !== 'GET' && request.method !== 'HEAD' ? request.body : undefined, redirect: 'follow', }); const responseHeaders = new Headers(response.headers); responseHeaders.set('Access-Control-Allow-Origin', '*'); responseHeaders.set('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS'); responseHeaders.set('Access-Control-Allow-Headers', 'Content-Type, Authorization, tenant-id'); if (request.method === 'OPTIONS') { return new Response(null, { status: 204, headers: responseHeaders }); } return new Response(response.body, { status: response.status, statusText: response.statusText, headers: responseHeaders, }); } // 静态资源请求 - 使用 env.ASSETS return env.ASSETS.fetch(request); }, };