[5주차 03] 예외 고도화 - 백엔드 개발자가 프론트 개발자에게 보내는 메시지✉️

개발냥이·2025년 2월 19일

데브코스

목록 보기
16/75
post-thumbnail

📌예외 처리

'예외'는 "일반 규칙이나 통례에서 벗어남. 또는, 그러한 것."이라는 뜻으로 예상치 못한 상황이라고 생각하면 된다.

그동안 강의에서 if~else문을 사용해서 예외 처리를 해줬지만 좀 더 디테일하게 들어가서 status까지 사용해주는 예외 고도화를 이번 시간엔 진행했다.

  • 성공했다는 상태코드인 200이 떴지만
    실제론 데이터가 없는 경우

POST 메소드를 사용 중 실제론 전송한 데이터가 없지만
위의 사진처럼 성공했다는 상태코드의 상태를 볼 수 있다.

누가봐도 예외인 상황이지만 프로젝트 규모가 커지다 보면 미처 발견하지 못할 수 있기 때문에 디테일한 표시가 필요하다!!
백엔드 개발자가 프론트 개발자에게 보내는 메시지✉️

기존 if~else문은 그대로 쓰되 적절한 상태코드와 메시지를 통해
정확한 상태 (오류가 난 상태)를 프론트 개발자에게 전달할 수 있다.
상태코드 살펴보기
404와 같은 상태코드는 위의 사이트에서 확인 후 적절한 값을 사용하면 좋다 😁😁


📌Handler

영단어 뜻 "손을 쓰는 사람" 이라는 뜻처럼
HTTP req(요청)에 자동으로 호출되는 메소드로
특정 요청이나 이벤트를 처리하는 함수이다

app.get('/youtubers', 
  //여기부터 핸들러      
  (req, res) => {
  const showData = Array.from(db.values());
  res.json(showData);
});

이런 GET 메소드를 사용하는 API 코드가 있을 때
URL 뒤에 있는 콜백함수가 핸들러이다


📌자바스크립트 "==" 과 "===" 의 차이

"=="과 "==="은 비교연산자로 결론부터 말하면
==(약한 비교)===(강한 비교)라고 표현할 수 있다.

// 1번 코드
if (1 == '1') {
  console.log('같다');
} else {
  console.log('같지 않다');
}
// '같다'가 출력


// 2번 코드
if (1 === '1') {
  console.log('같다');
} else {
  console.log('같지 않다');
}
// '값지 않다가 출력'

위의 1번 코드 같은 경우 약한 비교로 값만 비교 한다!!
따라서 1과 '1'은 같기 때문에 true이다

하지만 2번 코드는 강한 비교로 값 + 타입을 비교 한다!!
1(Number)와 '1'(String)은 다르기 때문에 false이다.


🤔느낀점

예외 처리를 중요성은 알고 있었지만 상태코드를 개발자가 작성해서 보낼 수 있다는 사실을 첨 알게 되어 매우 유익했다.
솔직히 상태 코드도 4xx면 클라이언트 오류 , 5xx면 서버 오류 이런식으로만 알고 있었는데
이번 실습과 강의를 통해 좀 더 깊게 알 수 있었다.

profile
웹 개발자가 되고픈

0개의 댓글