오늘은 DRF 를 위한 JSON 에 대해 공부 했다.
JSON
JSON 은 JavaScript Object Notation 의 줄임말로서 데이터의 송수신을 자바스크립트 객체로서 수행할 수 있게끔 하는 가벼운 문자열 데이터 표현식이다.
JSON 이 등장하기 이전에는 XML 이 그 역할를 독차지 하고 있다. 하지만 XML 은 비교적 크기가 무겁다는 이유로 요즘은 JSON 이 더 많은 지분을 확보하고 있다.
XML 이란?
eXtensible Markup Language 의 줄임말로서 html 과 많이 비교된다. 둘의 결정적인 차이는 html 은 테그들을 통해서 데이터를 표현하는 마크업 언어이고 XML 은 데이터를 설명하는 마크업 언어이다. json 과 마찬가지로 웹상에서 주고 받는 데이터이다.
django 에서의 JSON
그렇다면 JSON 이 django 에서 쓰이는 방법은
django rest framework 전까지는 클라이언트의 요청에 대해 서버는 우리가 잘 알고 있는 html, css, javascript 등을 보내주다.
django rest framework 는 클라이언트의 요청에 대해 JSON 을 돌려줌으로서 소통을 한다.
JSON 은 겉보기에 자바스크립트 객체와 같은 형태입니다. 그렇다면 JSON과 자바스크립트 객체는 같은 것지만 아니다. 만약 자바스크립트 객체를 통해 데이터를 전송하다보면 자바스크립트 객체라는 타입을 인지 못하는 경우가 발생할 수 있다. 따라서 가장 일반적인 자료형인 문자열로 데이터를 주고 받아 이러한 문제를 해결한다. 즉, JSON 도 문자열 타입이다.
자바스크립트 객체를 JSON 으로 바꾸는 것을 직렬화, Serialization 이라 한다.
이외 에 다양한 사용법 들이 있지만,
지금 당장 전부 공부 할 수는 없기 때 문에 실습 하면서 이해 하고 있는 중이다.
'TIL(Daily) > ETC' 카테고리의 다른 글
Fri/28/Oct/22 -Django 심화 (0) | 2022.11.01 |
---|---|
Wen/26/Oct/22-CRUD복습 (0) | 2022.10.27 |
Mon/24/Oct/22/ Django심화-1 (0) | 2022.10.25 |
Fri/21/Oct/22 -머신러닝 프로젝트 5 (0) | 2022.10.22 |
Thu/20/Oct/22- 장고 머신러닝 프로젝트-4 (0) | 2022.10.21 |
댓글