JSON : JavaScript Object Notation의 약자
그 이름이 나타내는 바와 같이 JavaScript 의 기법으로 데이터를 기술할 수 있는 점이 가장 큰 특징입니다.
웹 서비스에서 브라우저가 JavaScript를 실행할 수 있어 호환성이 좋고 XML과 비교하면 데이터표현이 간결하다는 등의 이점이 있어 Ajax 통신에서 데이터 포맷으로 활용되고 있습니다.
미디어 타입 : application/json
자료형 : JSON에 마련되어 있는 자료형에는 다음의 6가지가 있습니다.
object
array
string
number
boolean
null
object
- 이름과 값의 집합
- 이름과 값의 세트를 오브젝트의 '멤버'라고 부름
- JSON에서 멤버의 이름은 항상 문자열임
- 하지만 멤버의 값은 문자열, 수치는 물론 오브젝트나 배열 등 JSON의 자료형이면 다 들어갈 수 있음
string
- JSON의 문자열은 반드시 이중인용부호(")로 감싸줌
- 백슬래시(\)와 줄바꿈 같은 제어문자는 특수한 에스케이프 표기법을 가지고 있음
- ex- foo\\bar\n
boolean
- 'true'와 'false'를 반드시 모두 소문자로 기술해야 함
null
- 반드시 소문자로 써야함
일시
- JSON에서 기본적으로 제공하는 자료형에 일시는 없음
- 따라서 일시를 표현할 때 개발자 측에서 어떤 규칙을 정하여 준비하지 않으면 안됨
- 타임 존을 취급할 필요가 있을 경우, JavaScript의 Date 클래스의 toString() 메서드로 출력한 문자열을 이용할 수 있음. 하지만 이 메서드의 경우 JavaScript 처리 시스템에 따라 출력이 달라진다는 문제점이 있기 때문에 좀 더 표준적인 포맷으로 일시를 저장하는 것이 바람직함.
링크
- JSON에서 링크를 구현하기 위해서는 단순히 URI를 문자열 값으로 가지는 것이 가장 간편함
- URI는 절대 URI로 해두는 편이 무난함. 상대 URI를 넣을 수는 있지만 베이스 URI를 명확할 필요가 있음
'Network & Web' 카테고리의 다른 글
RESTful API는 어떻게 만들 수 있을까? (0) | 2020.11.29 |
---|---|
HTTP 메시지의 구조 (0) | 2020.11.27 |
웹 애플리케이션의 구조와 흐름 (0) | 2020.11.27 |
메타데이터와 MIME미디어 타입 / XML과 HTML의 차이 (0) | 2020.11.25 |