Ajax와 작동 원리
AJAX는 웹페이지를 새로 고치지 않고 서버와 데이터를 교환하는 기술로, 구글이 구글 지도에서 처음 사용했고 빠르게 인기를 끌었습니다.
AJAX는 도메인을 교차할 수 없습니다. 도메인을 교차해야 하는 경우 document.domain='a.com'을 사용하거나 서버 프록시를 사용하여 XMLHttpRequest 파일을 프록시할 수 있습니다.
AJAX는 기존 인터넷 표준을 기반으로 하며 이를 함께 사용합니다.
XMLHttpRequest 객체(서버와 비동기적으로 데이터 교환)
JavaScript/DOM(정보 표시/상호작용)
CSS(데이터 스타일 정의)
XML(데이터 변환 형식)
XMLHttpRequest 객체 생성
모든 최신 브라우저(IE7, Firefox, Chrome, Safari 및 Opera)에는 XMLHttpRequest 개체가 내장되어 있습니다.
Ajax 객체 생성:
//IE6 이상
var oAjax = new XMLHttpRequest();
//IE6
var oAjax =new ActiveXObject("Microsoft.XMLHTTP")
서버에 연결
oAjax.open(메서드, URL, 비동기 여부)
우리 모두는 Ajax가 대화형 웹 애플리케이션을 생성하기 위한 웹 개발 기술을 가리키는 "Asynchronous Javascript And XML"(비동기 JavaScript 및 XML)을 의미한다는 것을 알고 있습니다. 따라서 Ajax는 자연스럽게 비동기 모드로 작동합니다(비동기는 참, 동기는 거짓)
동기식 및 비동기식
동기화란 송신자가 데이터를 보내고 수신자가 응답을 보낼 때까지 기다린 후 다음 데이터 패킷을 보내는 통신 방식을 말합니다.
비동기식이란 송신자가 데이터를 보내고 수신자가 응답을 보내기를 기다린 후 다음 데이터 패킷을 보내는 통신 방법을 말합니다.
(간단히 말하면 동기화는 한 가지 작업만 수행할 수 있음을 의미하고 비동기는 동시에 여러 작업을 수행할 수 있음을 의미합니다.)
요청 보내기 send()