AJAX (Asynchronous JavaScript and XML) ; 비동기 자바스크립트와 XML

AJAX는 사용자 요청을 즉시 처리하는 인터랙티브 형식의 웹 응용프로그램을 만들기 위한 컴퓨터 프로그래밍 방법이다. AJAX는 자바스크립트, DHTML, XML, CSS, DOM 그리고 마이크로소프트 객체인 XMLHttpRequest 등 여러 가지 프로그래밍 도구들을 결합시킨다. AJAX는 새로운 페이지 전체가 새로 표시될 때까지 사용자들이 기다려야 했던 HTTP 요청과는 달리, 사용자가 어떤 동작을 수행하면 그 즉시 웹페이지의 내용이 수정되도록 해준다. 예를 들어, 기상예보 사이트에서 사용자가 우편번호를 입력하면 그 페이지의 한쪽 편에 그 지역 상황이 지체 없이 표시될 수 있게 하는 것을 들 수 있다. AJAX를 이용한 응용프로그램 중 잘 알려진 예 중에 '구글 지도'가 있다. 구글 지도의 인터페이스는 사용자가 실시간으로 뷰를 바꾸거나 지도를 조작할 수 있게 해준다. AJAX 응용프로그램을 위해 플러그인을 설치할 필요는 없으며, 웹브라우저와 직접 동작한다. 이 기술이 XMLHttpRequest에 의존하고 있기 때문에, 초창기에는 마이크로소프트 인터넷 익스플로러에서만 동작했지만, 현재는 대부분의 브라우저에서 AJAX를 지원한다.

AJAX로 만들어진 응용프로그램은 사용자의 브라우저와 서버 사이에서 중간자로서 역할을 하는 엔진을 사용한다. 브라우저는 웹페이지를 표시하는 대신 사용자가 볼 페이지를 표시해 주는 AJAX 엔진을 올려 놓는다. 이 엔진은 자바스크립트를 사용하여 웹브라우저와 통신하며 백그라운드에서 지속적으로 실행된다. 페이지 상에서 사용자 입력이 들어오면, 자바스크립트 호출이 AJAX 엔진으로 보내지며, 이는 대부분의 경우 즉시 응답된다. 만약 엔진에 추가 정보가 필요한 경우, 페이지가 수정되고 있는 그 순간에 XML을 이용해 서버에 요청한다

AJAX는 어떤 한 회사의 독점적 기술이거나 패키지 상품이 아니며, 웹 개발자들은 이미 수년 동안 자바스크립트와 XML이 결합된 기술을 사용해 왔다.


작성 : 02-08-15 수정 : 05-11-13
영어판(whatis.com)