커리어리에서 HTTP status code 관련 질문글을 보았는데요,
 - https://careerly.co.kr/qnas/912

 

흥미로워서 조금 찾아보았습니다.

 

스펙에서는 401을 다음과 같이 정의하고 있습니다.

The 401 (Unauthorized) status code indicates that the request has not been applied because it lacks valid authentication credentials for the target resource.

 

로그인을 "ID/PASSWORD를 이용해 사용자 정보를 가져오는 동작" 이라고 정의하면,

로그인 실패는 사용자 인증에 실패하여 사용자 정보를 가져오는데 실패하는 것이므로 401로 봐도 괜찮을 것 같습니다.

오래전에도 비슷한 질문이 있었네요.

 - https://stackoverflow.com/questions/11714485/restful-login-failure-return-401-or-custom-response

 

가장 추천을 많이 받은 답변에서는 boolean 형태의 response를 지양하길 바라는데요,

로그인을 "이게 내 계정 정보 맞는지 확인(true/false)하는 동작" 이라고 생각하면,

로그인 실패에 대해 401은 어색할 수도 있겠습니다.

 

ref: https://www.rfc-editor.org/rfc/rfc9110.html#name-401-unauthorized

+ Recent posts