1차 프로젝트에서 장바구니 view를 작성하면서 JSONDecodeError를 처음 사용하게 되었다.
이것도 처음에 헷갈렸던 것이, 에러 메세지를 테스트하는데 KeyError와 유사한데 다른 상황에서 raise된다는 점이다.
예를 들어 cart 라는 테이블에 user/product_id/quantity/price가 key값으로 설정되어 있다고 하자. key값이 아예 없는 경우 KEY_ERROR
가 뜬다.
그런데 만약 아래와 같이 작성하면 JSONDecodeError
가 뜬다.
결국 JSONDecodeError
란, JSON 데이터 parsing 에러라고 볼 수 있다. 데이터가 유효한 형태의 JSON이 아니면, JSONDecodeError
가 발생한다. decoding의 변환 작업은 아래와 같다.
JSON | Python |
---|---|
object | dict |
배열(arry) | list |
문자열(string) | str |
숫자(정수) | int |
숫자(실수) | float |
true | True |
false | False |
null | None |