Asynchronous Javascript And Xml(비동기식 자바스크립트와 xml)의 약자
자바스크립트를 통해서 서버와 브라우저가 비동기 방식으로 데이터를 교환할 수 있는 통신 기능 입니다.
Ajax
를 사용하면 웹 애플리케이션은 기존 페이지의 화면 및 동작을 방해하지 않으면서
백그라운드에서 비동기적으로 서버로 데이터를 보내고 서버에서 데이터를 받아올 수 있습니다
XMLHttpRequest
API는 비동기 통신에 자주 사용되며, 최근에는 fetch
API가 자주 사용됩니다.
요청을 보낸 후 응답과는 상관없이 동작하는 방식
웹페이지를 리로드 하지 않고도 통신이 가능한 구조
상호작용성이 좋아집니다. 서버의 새로운 컨텐츠를 전체 페이지를 다시로드할 필요 없이 동적으로 변경할 수 있습니다.
스크립트나 스타일 시트는 한 번만 요청하면 되므로 서버에 대한 부담을 줄여줍니다.
상태를 페이지에서 관리 할 수 있습니다. 메인 컨테이너 페이지가 다시 로드되지 않기 때문에 JavaScript의 변수와 DOM의 상태가 유지됩니다.
동적 웹 페이지는 북마크하기 어렵습니다.
브라우저에서 JavaScript가 비활성화된 경우 작동하지 않습니다.
일부 웹 크롤러는 JavaScript를 실행하지 않으며 JavaScript에 의해 로드된 콘텐츠를 볼 수 없습니다.