본문 바로가기
코딩공부/Django

상태코드 HTTP_204_NO_CONTENT 관련 에러

by Dong_Devlog 2022. 11. 28.
상태코드 HTTP_204_NO_CONTENT 관련 에러

증상 : 해당 기능의 api 요청을 보낼 시 ‘HTTP_204_NO_CONTENT’를 사용할 경우 에러를 일으킴

 

원인 :

console.log(response)를 사용하여 확인 결과 body에 백엔드의 데이터를 담아오지 못하는 것을 찾아냄. 그래서 확인

결과 상태코드에 따라 api로 요청을 보낼 때 영향을 미칠 수 있던 것이다. 상태코드 HTTP_204_NO_CONTENT를 사용 하여 restAPI를 사용하면 json 형식의 데이터를 담을 수 없어 에러를 발생.

 

해결방법 :

‘HTTP_204_NO_CONTENT’는 json 형식의 데이터를 주고 받을 수 없으므로 상태코드를 ‘HTTP_200_OK’ 변경하여 해결

 


API 개발 시 적합한 상태코드를 작성하기 위해 상태코드에 대해 공부할 것.

사용할 법한 상태 코드를 정리해보았다.

  • 200: OK (정상, 데이터 있음)
  • 204: No Contents (정상, 데이터 없음)
  • 301: Moved Permanently (리다이렉션)
  • 400: Bad Request (실패, 클라이언트에서 넘어온 파라미터가 이상함)
  • 401: Unauthorized (실패, 클라이언트에서 넘어온 보안 토큰이 이상함)
  • 403: Forbidden (실패, 사용자의 권한으로 리소스를 사용할 수 없음)
  • 404: Not Found (실패, 데이터가 있어야 하나 없음)
  • 410: Gone (실패, 데이터가 있었으나 삭제됨. 이건 굳이...?)
  • 500: Internal Server Error (실패, 서버 로직 문제)
  • 501: Not Implemented (실패, 없는 리소스 요청)

댓글