Files
rice-pk-xhs/web/app/api/[...path]/route.js
T
codex-bot 2bf21a9f97
Verify mini program and deploy preview / verify-deploy (push) Successful in 3m0s
feat: migrate rice preview to Next.js
2026-09-20 14:22:47 +08:00

13 lines
990 B
JavaScript

const API_BASE = process.env.API_INTERNAL_URL || 'http://pk-lab-api:8000';
async function forward(request, context) {
const { path } = await context.params;
const incoming = new URL(request.url);
const target = new URL(`/api/${path.join('/')}${incoming.search}`, API_BASE);
const headers = new Headers();
for (const name of ['authorization', 'content-type', 'accept']) { const value = request.headers.get(name); if (value) headers.set(name, value); }
const response = await fetch(target, { method: request.method, headers, body: ['GET','HEAD'].includes(request.method) ? undefined : await request.arrayBuffer(), cache: 'no-store' });
return new Response(response.body, { status: response.status, headers: { 'content-type': response.headers.get('content-type') || 'application/json' } });
}
export const dynamic = 'force-dynamic';
export const GET = forward; export const POST = forward; export const PUT = forward; export const PATCH = forward; export const DELETE = forward;