next.jsmiddlewareedge
Next.js Middleware - 요청 가로채기와 엣지 런타임
조회 0
Next.js Middleware는 요청이 완료되기 전에 실행되는 코드로, 리다이렉트, 헤더 수정, 인증 체크 등을 처리할 수 있습니다.
Edge Runtime에서 실행되어 매우 빠른 응답 시간을 제공합니다.
1. 기본 Middleware 구조
// middleware.ts (프로젝트 루트)
import { NextResponse } from "next/server";
import type { NextRequest } from "next/server";
export function middleware(request: NextRequest) {
// 요청 처리 로직
return NextResponse.next();
}
export const config = {
matcher: "/about/:path*", // 특정 경로에만 적용
};
middleware.ts는 프로젝트 루트에 위치해야 합니다.matcher로 Middleware가 실행될 경로를 지정합니다.
2. 인증 체크와 리다이렉트
import { NextResponse } from "next/server";
import type { NextRequest } from "next/server";
export function middleware(request: NextRequest) {
const token = request.cookies.get("auth-token");
(!token && request...()) {
.( (, request.));
}
.();
}
config = {
: [],
};