From 25653f2d4f1fad8318e12925ecc5dac77950affa Mon Sep 17 00:00:00 2001 From: jangwoong Date: Fri, 10 Jul 2026 16:47:10 +0900 Subject: [PATCH] =?UTF-8?q?[cs=20frontend]=20=20=EA=B3=84=EC=A0=95?= =?UTF-8?q?=EC=83=81=ED=83=9C=EC=97=90=20=EB=94=B0=EB=9D=BC=EC=84=9C=20?= =?UTF-8?q?=EC=8A=B9=EC=9D=B8=EB=8C=80=EA=B8=B0=EC=A4=91,=20=ED=83=88?= =?UTF-8?q?=ED=87=B4=EA=B3=84=EC=A0=95=EB=93=B1=20=EB=A9=94=EC=8B=9C?= =?UTF-8?q?=EC=A7=80=20=ED=91=9C=EC=8B=9C=ED=95=98=EB=8F=84=EB=A1=9D=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/cs/app/api/proxy/[...url]/route.ts | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/apps/cs/app/api/proxy/[...url]/route.ts b/apps/cs/app/api/proxy/[...url]/route.ts index 8e9a39cae..f42400d1b 100644 --- a/apps/cs/app/api/proxy/[...url]/route.ts +++ b/apps/cs/app/api/proxy/[...url]/route.ts @@ -56,10 +56,32 @@ async function handler( if (!result.ok) { console.error(`[BFF Proxy Error] Backend returned status ${result.status} for ${params.url.join("/")}`); + let errorText = ""; try { - const errorText = await result.text(); + errorText = await result.text(); console.error(`[BFF Proxy Error Body] ${errorText}`); } catch (err) {} + + if (result.status === 503) { + const serviceName = params.url[0] || "user-service"; + return NextResponse.json( + { message: `${serviceName} 서비스와의 연결이 불안정 합니다. 관리자에게 연락해 주십시오.` }, + { status: 503 }, + ); + } + + if (result.status !== 500 && errorText) { + try { + const errorJson = JSON.parse(errorText); + if (errorJson && errorJson.message) { + return NextResponse.json( + { message: errorJson.message }, + { status: result.status }, + ); + } + } catch (e) {} + } + return NextResponse.json( { message: "Invalid Credentials" }, { status: 401 },