Server

JSON 이란?

Raconer 2023. 4. 15. 19:48
728x90

JavaScript Object Notation의 약자이며 속성-값 쌍 또는 "키-값 쌍"으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷이다.

사용 용도

비동기 브라우저/서버 통신 (AJAX)에 주로 사용 되고 XML을 대체하는 데이터 포맷으로 쓰인다.

특히, 인터넷에서 자료를 주고 받을 때 그 자료를 표현하는 방법으로 알려져 있다.

자료의 종류에 큰 제한은 없으며, 특히 컴퓨터 프로그램의 변수 값을 표현하는데 적합하다.

추가 설명

본래는 자바스크립트 언어로 부터 파생되어 자바스크립트의 구문 형식을 따르지만 언어 독립형 데이터 포맷이다.
즉, 프로그래밍 언어나 플랫폼에 독립적으로, 구문 분석 및 JSON 데이터 생성을 위한 코드는 C, C++, C#, 자바, 자바스크립트, 펄, 파이썬 등 수많은 프로그래밍 언어에서 쉽게 이용할 수 있다.

JSON 포맷은 본래 더글라스 크록 포드가 규정하였고 JSON 공식 인터넷 미디어 타입은 application/json이며 파일 확장자는. json이다.

예제

{
    "이름": "홍길동", // 문자열은 "" 음표로 묶여 있어야 한다.
    "나이": 25,
    "성별": "여",
    "주소": "서울특별시 양천구 목동",
    "특기": ["농구", "도술"], // 배열 정의시 
    "가족관계": {"#": 2, "아버지": "홍판서", "어머니": "춘섬"}, // Json 안 Object
    "회사": "경기 수원시 팔달구 우만동"
 }

장점

  • JSON은 텍스트로 이루어져 있으므로, 사람과 기계 모두 읽고 쓰기 쉽다.
  • 프로그래밍 언어와 플랫폼에 독립적이므로, 서로 다른 시스템 간에 객체를 교환하기에 좋다.
  • 자바스크립트의 문법을 채용했기 때문에, 자바스크립트에서 eval명령으로 곧바로 사용할 수 있다.
    • 이런 특성은 자바스크립트를 자주 사용하는 웹 환경에서 유리하다.
    • 그러나 실질적으로 ebal 명령을 사용하면 외부에서 악성코드가 유입될 수 있다.
  • 모질라 파이어폭스 3.5, 인터넷 익스 플로러 8, 오페라 10.5, 사파리, 구글 크롬 등 대부분의 최신 웹 브라우저는 JSON 전용 팟 기능을 내장하고 있으므로 이런 기능을 사용하는 것이 더 안전하고 빠르다.

참고

Json 위키 백과

728x90

'Server' 카테고리의 다른 글

Cookie vs LocalStorage vs SessionStorage  (0) 2023.04.16
Nginx WebSocket, Proxy Error  (0) 2023.04.16
세션 vs 토큰 vs 쿠키?  (0) 2023.04.15
Client와 Server사이에 데이터 전송 구조  (0) 2023.04.15
프로토콜이란?  (0) 2023.04.15