[django] JSONDecodeError vs KeyError

EMMA·2022년 4월 9일

JSONDecodeError란?


1차 프로젝트에서 장바구니 view를 작성하면서 JSONDecodeError를 처음 사용하게 되었다.

이것도 처음에 헷갈렸던 것이, 에러 메세지를 테스트하는데 KeyError와 유사한데 다른 상황에서 raise된다는 점이다.
예를 들어 cart 라는 테이블에 user/product_id/quantity/price가 key값으로 설정되어 있다고 하자. key값이 아예 없는 경우 KEY_ERROR가 뜬다.
그런데 만약 아래와 같이 작성하면 JSONDecodeError가 뜬다.

결국 JSONDecodeError 란, JSON 데이터 parsing 에러라고 볼 수 있다. 데이터가 유효한 형태의 JSON이 아니면, JSONDecodeError 가 발생한다. decoding의 변환 작업은 아래와 같다.

JSONPython
objectdict
배열(arry)list
문자열(string)str
숫자(정수)int
숫자(실수)float
trueTrue
falseFalse
nullNone

참고 자료
https://docs.python.org/ko/3.7/library/json.html

profile
예비 개발자의 기술 블로그 | explore, explore and explore

0개의 댓글