
WWW (World Wide Web) : 인터넷에 연결된 사용자들이 서로의 정보를 공유하는 공간
API (Application Programming Interface) : 프로그램의 상호작용을 도와주는 매개체

동기 통신(Synchronous) vs 비동기 통신(Asynchronous)
동기 통신: 전체 페이지를 로딩하는 방식으로, 비동기 통신 이전에 사용되었다.
- 서버 부하가 커지고 시간이 오래 걸린다.
- 로딩하는 시간동안 다른 데이터 처리가 불가능
- 요청과 응답 값의 순서, 처리 결과 값을 보장
비동기 통신: 반응을 기다리지 않고 Non Block 상태로 계속하여 일을 진행하는 방식
- 자원 사용이 효율적, 성능 향상
- 순서를 보정하지 않음
- Response에 대한 처리 결과를 보장받고 처리해야 하는 서비스에는 적합하지 않음
서버에 Ajax 요청을 보내는 방법 브라우저 자체 내장되어 있는 XMLHttpRequest, fetch를 사용하거나, 외부 라이브러리인 jQuery, axios 등을 사용할 수 있다.
Axios가 가장 선호되는 추세이다.
// IE7 이상, CROME, FIREFOX, SAFARI, OPERA
var var = new XMLHttpRequest();
// IE5, IE6
var var = new
ActiveXObject("Microsoft.XMLHTTP");
JQuery → $.ajax ... 로 임포트하여 사용, React와 Vue가 사용되면서 이용 빈도가 줄었다.
Axios → Node.js와 브라우저를 위한 Promise API를 활용하는 ‘HTTP 통신 라이브러리’
timeout 설정 가능, 브라우저 호환성이 뛰어 남
var jsonData = `{
"name" : "Jaxon",
"age" : 42,
"gender" : "men",
"interest" : ["music", "dance"],
"family" : {"dad":"Jhon","mom","Lilly"},
"married" : true,
"Works At" : null
}`;
JSON.parse() JSON 객체 → JS 객체JSON.stringify() JS 객체 → JSON 객체var jsData = JSON.parse(jsonData);
console.log(jsData);
> Object
name: Jaxon,
age: 42,
gender : "men",
interest : (2)["music", "dance"],
family : {dad:"Jhon",mom,"Lilly"},
married : true,
Works At : null
참고: Ajax 시작하기
Ajax 란, 활력 있는 웹페이지를 만들기 위한 필수 기능
[Network] 동기와 비동기