|
@@ -1,37 +0,0 @@
|
|
|
-// API 代理 - 将 /api/* 请求转发到后端服务
|
|
|
|
|
-const API_BASE = 'https://tg-live-game-api.ifoodme.com';
|
|
|
|
|
-
|
|
|
|
|
-export const onRequest: PagesFunction = async (context) => {
|
|
|
|
|
- const { request } = context;
|
|
|
|
|
- const url = new URL(request.url);
|
|
|
|
|
-
|
|
|
|
|
- // 构建目标 URL: /api/auth/login -> https://tg-live-game-api.ifoodme.com/api/auth/login
|
|
|
|
|
- const targetUrl = `${API_BASE}${url.pathname}${url.search}`;
|
|
|
|
|
-
|
|
|
|
|
- // 复制请求头,移除 host
|
|
|
|
|
- const headers = new Headers(request.headers);
|
|
|
|
|
- headers.delete('host');
|
|
|
|
|
- headers.set('origin', API_BASE);
|
|
|
|
|
-
|
|
|
|
|
- // 转发请求
|
|
|
|
|
- const response = await fetch(targetUrl, {
|
|
|
|
|
- method: request.method,
|
|
|
|
|
- headers,
|
|
|
|
|
- body: request.method !== 'GET' && request.method !== 'HEAD'
|
|
|
|
|
- ? request.body
|
|
|
|
|
- : undefined,
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
- // 复制响应头
|
|
|
|
|
- const responseHeaders = new Headers(response.headers);
|
|
|
|
|
-
|
|
|
|
|
- // 添加 CORS 头
|
|
|
|
|
- responseHeaders.set('Access-Control-Allow-Origin', url.origin);
|
|
|
|
|
- responseHeaders.set('Access-Control-Allow-Credentials', 'true');
|
|
|
|
|
-
|
|
|
|
|
- return new Response(response.body, {
|
|
|
|
|
- status: response.status,
|
|
|
|
|
- statusText: response.statusText,
|
|
|
|
|
- headers: responseHeaders,
|
|
|
|
|
- });
|
|
|
|
|
-};
|
|
|