- docker-compose: 下线 Python backend/config-service,切换至 config-service-rs - archive: 归档 legacy Python 目录至 archive/python/* - services: 新增/更新 common-contracts、api-gateway、各 provider、report-generator-service、config-service-rs - data-persistence-service: API/system 模块与模型/DTO 调整 - frontend: 更新 useApi 与 API 路由 - docs: 更新路线图并勾选光荣退役 - cleanup: 移除 data-distance-service 占位测试
24 lines
983 B
TypeScript
24 lines
983 B
TypeScript
const BACKEND_BASE = process.env.NEXT_PUBLIC_BACKEND_URL;
|
|
|
|
export async function GET(
|
|
_req: Request,
|
|
context: { params: Promise<{ request_id: string }> }
|
|
) {
|
|
if (!BACKEND_BASE) {
|
|
return new Response('NEXT_PUBLIC_BACKEND_URL 未配置', { status: 500 });
|
|
}
|
|
const { request_id } = await context.params;
|
|
const target = `${BACKEND_BASE}/tasks/${encodeURIComponent(request_id)}`;
|
|
const resp = await fetch(target, { headers: { 'Content-Type': 'application/json' } });
|
|
const headers = new Headers();
|
|
const contentType = resp.headers.get('content-type') || 'application/json; charset=utf-8';
|
|
headers.set('content-type', contentType);
|
|
const cacheControl = resp.headers.get('cache-control');
|
|
if (cacheControl) headers.set('cache-control', cacheControl);
|
|
const xAccelBuffering = resp.headers.get('x-accel-buffering');
|
|
if (xAccelBuffering) headers.set('x-accel-buffering', xAccelBuffering);
|
|
return new Response(resp.body, { status: resp.status, headers });
|
|
}
|
|
|
|
|