티스토리 뷰

본론으로 바로 들어간다.

간혹 회사시스템이던 아니면 웹사이트던 가입하거나 로그인할때 틀린 정보를 입력했음에도 브라우저에서 계정 정보를 저장하겠냐고 묻는 화면을 본 적이 있을 것이다.

그 이유는 http status code를 4XX 계열을 넘기지 않고, 2XX 계열을 넘기기 때문이다.

예를 들면 아래와 같다.

딱봐도 비밀번호와 비밀번호 검증 길이가 다르다. 이걸 아래 소스와 같이 200으로 반응해주면?

if (password !== passwordConfirmation) {
    return res.status(200).render('join', {
      pageTitle,
      errorMessage: 'Password confirmation does not match.',
    });
  }

분명히 틀렸고 오류가 났음에도 브라우저에서는 성공으로 판단하고 저장하겠냐고 물어본다.

400으로 바꿔보면?

200으로 응답줬을 때와는 달리 저장하겠냐고 물어보지 않는다.

회사 시스템 중에도 간혹 이런 규칙을 적용하지 않아서 사용자 경험 측면에서 좋지 않은 경우가 있다.

숙지하도록 하자.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함