패스잇
프론트엔드 개발 · 중급

App Router의 Route Handlers(`app/api/route.ts`)에서 동적 라우팅 파라미터(예: `[id]`)에 접근하려면 함수의 매개변수를 어떻게 정의해야 하나요?

힌트 · 함수의 두 번째 매개변수로 context 객체를 받아 `context.params.id` 형태로 접근합니다. (예: `export async function GET(request, { params })`)

paramsNextRequestcontextdynamic route segmentstype definition

모범답안

App Router에서 동적 라우팅 파라미터에 접근하려면 Route Handler 함수의 두 번째 매개변수를 활용해야 합니다.

함수를 정의할 때 request와 함께 context 객체를 받도록 선언하고, context 객체 안의 params 속성을 통해 동적 라우트 세그먼트에 접근할 수 있습니다. 예를 들어 app/api/[id]/route.ts에서 id 값에 접근하려면 export async function GET(request: NextRequest, { params }: { params: { id: string } }) 와 같이 함수를 정의하고, params.id를 사용하면 됩니다.

타입스크립트를 사용한다면 params의 타입을 명시적으로 정의하여 타입 안정성을 확보하는 것이 좋습니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 Next.js 면접 질문

← Next.js 면접 질문 전체 보기