handler와 find로 보는 Express 요청 처리

Nogglee·2026년 1월 26일

handler

handler란?
안드로이드에서 필수적인 개념으로 알려져있는 용어다.
넓은 의미로 쓰이는 단어라, 쓰는 환경에 따라 뜻하는 의미가 조금씩 다르다.

Node.js에서의 handler는 HTTP request가 날아오면 자동으로 호출되는 메소드를 의미한다.
app.HTTP METHOD (PATH, HANDLER)

서버는 요청이 오기 전까지 어떤 함수를 실행해야 할지 알 수 없기 때문에,
클라이언트의 요청이 들어왔을 때 실행할 함수를 핸들러로 등록해둔다.

위와 같이 parameter로 handler를 등록하는 형태를 callback 함수라고 한다.


find

이전에 배운 forEach를 사용하여 배열 안의 요소를 하나씩 꺼내 확인하는 작업을 했었다.
이와 비슷한 역할을 하는 find는 배열을 앞에서부터 하나씩 확인하면서, 조건을 만족하는 첫 번째 요소를 찾아 반환한다.

forEach의 경우 배열의 처음부터 끝까지 순회하며 실행하기 때문에, 원하는 값을 찾아도 중간에 멈출 수 없다.
반면 find는 특정 값 찾기가 목적이기 때문에 조건을 만족하면 즉시 종료한다.

find 특징

  • 반환값: 조건을 만족하는 요소를 반환하며, 요소를 찾지 못하면 undefined를 반환
  • 동작 방식: 조건을 만족하는 순간 즉시 멈춤
  • 용도: '입력값과 일치한 id 찾기'처럼 단건 조회에 적합

find vs filter

find에 대해서 알아보다가 filter라는 method도 발견하였다.
아직 필요한 시점이 아니라 사용하지는 않지만 차이점을 알아두기 위해 아래와 같은 내용을 준비했다.

  • find: 조건을 만족하는 첫 번째 요소 1개를 반환
  • filter: 조건을 만족하는 모든 요소를 모아 배열로 반환

HTTP status code

이제 조건에 맞는 값을 찾아오는 방식을 알아보았으니,
이에 맞는 적절한 status code를 반환하는 방법을 알아보자.

status code는 200부터 100단위로 구분된다.

  • 200: 성공
  • 300: 리다이렉트
  • 400: 클라이언트 에러
  • 500: 서버 에러

CRUD에서 흔히 사용되는 세부 코드를 알아보자.

  • 200번대
    • 200: 조회 / 수정 / 삭제 성공
    • 201: 등록 성공
  • 400번대
    • 400: 클라이언트가 요청한 연산을 서버가 처리를 할 때 필요한 데이터가 부족함
    • 404: 선택한 페이지 또는 리소스를 찾을 수 없음
  • 500번대
    • 500: 서버가 크리티컬한 오류를 맞았음
profile
Product-minded Engineer

0개의 댓글