AJAX (Asynchronous Javascript And XML의 약자)를 완전히 처음 사용하는 경우 wikipedia 의 AJAX 항목이 좋은 시작점입니다.
DHTML 및 LAMP와 마찬가지로 AJAX는 그 자체로 기술이 아니라 기술 그룹입니다. AJAX는 다음의 조합을 사용합니다.
- 마크 업 및 스타일링 정보를위한 HTML 및 CSS.
- 제공된 정보를 동적으로 표시하고 상호 작용하기 위해 JavaScript로 액세스하는 DOM입니다.
- 브라우저와 서버간에 비동기 적으로 데이터를 교환하여 페이지 다시로드를 방지하는 방법입니다. 일반적으로 XMLHttpRequest (XHR) 개체가 사용되지만 IFrame 개체 또는 동적으로 추가 된 태그가 대신 사용되는 경우도 있습니다.
- 브라우저로 전송되는 데이터의 형식입니다. 일반적인 형식에는 XML, 미리 형식이 지정된 HTML, 일반 텍스트 및 JSON (JavaScript Object Notation)이 포함됩니다. 이 데이터는 어떤 형태의 서버 측 스크립팅에 의해 동적으로 생성 될 수 있습니다.
보시다시피 순수한 기술적 관점에서 볼 때 여기에는 정말 새로운 것이 없습니다. AJAX 부품의 대부분은 1994 년 ( XMLHttpRequest
객체의 경우 1999 년)에 이미 존재했습니다 . 진짜 참신한 점은 Google이 GMail (2004) 및 Google Maps (2005)에서했던 것처럼 이러한 부분을 함께 사용하는 것 입니다. 사실 두 사이트 모두 AJAX 홍보에 크게 기여했습니다.
클라이언트와 원격 서버 간의 통신과 클래식 애플리케이션과 AJAX 기반 애플리케이션 간의 차이점을 보여주는 다이어그램 아래에 천 단어의 가치가있는 그림이 있습니다.
주황색 부분의 경우 모든 것을 손으로 ( XMLHttpRequest
객체를 사용하여 ) 수행하거나 jQuery , Prototype , YUI 등과 같은 유명한 JavaScript 라이브러리를 사용 하여 애플리케이션의 클라이언트 측을 "AJAXify"할 수 있습니다. 이러한 라이브러리는 JavaScript 개발의 복잡성 (예 : 브라우저 간 호환성)을 숨기는 것을 목표로하지만 단순한 기능에는 지나칠 수 있습니다.
서버 측에서는 일부 프레임 워크 (예 : Java를 사용하는 경우 DWR 또는 RAJAX) 도 도움이 될 수 있지만 기본적으로 페이지를 부분적으로 업데이트하는 데 필요한 정보 만 반환하는 서비스 (처음에는 XML로 / XHTML-AJAX의 X- 요즘 JSON 이 선호되는 경우가 많습니다.)