dm middleware 수정

This commit is contained in:
ljpark
2025-10-23 20:10:10 +09:00
parent 5d73f91ed4
commit 53beadef9d
4 changed files with 24 additions and 3 deletions
+21
View File
@@ -11,6 +11,18 @@ const SEWERAGE_API_URL = process.env.NEXT_PUBLIC_SEWERAGE_API_URL || "";
const BUSINESS_JUSO_API_URL = process.env.NEXT_PUBLIC_FINDADRESS_URL || "";
const AdressKey = process.env.NEXT_PRIVATE_WR_ADDRESS_KEY || "";
/** 공통: URLSearchParams의 값을 decodeURIComponent 적용하여 querystring 생성 */
function toDecodedQueryString(params: URLSearchParams): string {
const entries: string[][] = Array.from(params.entries()).map(([k, v]) => {
try {
return [k, decodeURIComponent(v)] as string[];
} catch {
return [k, v] as string[];
}
});
return new URLSearchParams(entries).toString();
}
export function middleware(req: NextRequest) {
const pathname = req.nextUrl.pathname;
console.log(`[Middleware] Request URL: ${req.url}`);
@@ -142,6 +154,14 @@ export function middleware(req: NextRequest) {
console.log(`[Middleware] Rewriting from '/sewerage-service' path to: ${newUrl}`);
return NextResponse.rewrite(new URL(newUrl));
}
if (pathname.startsWith("/ngii-server")) {
const decodedQuery = toDecodedQueryString(searchParams);
const newUrl = `${process.env.NEXT_PUBLIC_NGII_URL}${pathname.replace("/ngii-server", "")}${decodedQuery ? `?${decodedQuery}` : ""}`;
console.log(`[Middleware] Rewriting from '${pathname}' path to: ${newUrl}`);
return NextResponse.rewrite(new URL(newUrl));
}
if (pathname.startsWith("/bussiness-juso-service")) {
console.log("AdressKey ", AdressKey);
const params = new URLSearchParams({
@@ -173,6 +193,7 @@ export const config = {
"/reuse-service/:path*",
"/sewerage-service/:path*",
"/bussiness-juso-service/:path*",
"/ngii-server/:path*",
"/",
],
};