Hypertext(문서나, 이미지파일들, 웹사이트에서 이용되어지고 있는 hyperlinks) Transfer Protocal로써 어떻게 hypertext를 서로 주고 받을 수 있는지를 규약한 protocol의 일종이다.
client는 server에게 data를 request해주고 server는 client에게 그에 맞는 응답을 response해준다.
http를 이용해서 server에게 데이터를 요청해서 받아올 수 있는 방법으로는 AJAX를 썼다.
(Asynchronous JavaScript And XML)=> 웹페이지에서 동적으로 서버에게 데이터를 주고 받을 수 있는 기술을 의미
(대표적인 예로는 XHR, XMLHttpRequest라는 object)가 있다.) 브라우저 API에서 제공하는 object중 하나로 이 object를 이용하면 server에게 간단하게 data를 요청하고 받아올 수 있다.
최근에 브라우저 API에 추가된 fetch API를 이용하면 간편하게 data를 주고 받을수 있다.
(단 IE에서는 지원이 안된다.)
XML은 HTML과 같은 Markup언어 중에 하나이다. 이런식으로 태그들을 이용해서 data를 나타낸다. 즉 html과 마찬가지로 data를 표현할 수 있는 방법 중 한가지이다.
하지만 XML은 불필요한 태그들이 너무 많이 들어가서 파일 SIZE도 커지고 가독성도 좋지 않아서 XML은 많이 사용되고 있지 않다.
- Server와 data를 주고받을 때는 XML뿐만 아니라, 다른 data타입도 쓸 수있는데 요즘에는 JSON을 많이 사용한다.
- JavaScript On Notation
- JSON(ECMAScript 3rd 1999)
- Object {key : value}
- 브라우저뿐만 아니라 mobile에서 server와 데이터를 주고받을때, 또는 server와 통신을 하지 않아도 object를 파일시스템에 저장할 때 JSON 데이터타입을 많이 쓰고 있다.
- data를 주고받을때 사용하는 가장 간단한 파일포맷이고
- 텍스트를 기반으로해서 가볍고
- 읽기 편하고
- key와 value로 이루어져 있는 파일포맷이고
- 데이터를 보통 server와 주고 받을 때 serialization을 위해서 쓴다.(직렬화), 데이터를 전송할 때
- 가장 중요하게 프로그래밍 언어와 플랫폼에 상관없이 쓰일 수 있다.(C, C++,C#, JAVA, PYTHON, PHP, Kotlin, GO 등)
참고: https://www.youtube.com/watch?v=FN_D4Ihs3LE
JSON 참고사이트
JSON Diff - The semantic JSON compare tool
www.jsondiff.com
Json Beautifier - Json Formatter | Json Viewer | Json Editor
Online best free JSON Beautifier tool used as JSON editor, Json viewer, Json Validator and Json formatter to display data in a tree view and plain text.
jsonbeautifier.org
https://tools.learningcontainer.com/json-validator/
Best free online JSON Validator
The JSON Validator(JSONLint) helps debugging JSON data by formatting and validating JSON data, JSON String and Json Objects so that it can easily find and read errors by human beings.
tools.learningcontainer.com
'JavaScript > DreamCoding' 카테고리의 다른 글
Media Queries (0) | 2021.07.01 |
---|---|
DreamCoding_12_async / await 개념파악 (0) | 2021.06.30 |
DreamCoding_9_JSON 개념정리 (0) | 2021.06.29 |
자바스크립트 객체 복제 방법 (0) | 2021.06.29 |
DreamCoding _1_javascript_2 (0) | 2021.06.25 |