728x90
AJAX (Asynchronous Javascript And XML)
정의
- Asynchronous Javascript And Xml(비동기식 자바스크립트와 xml)의 약자
- 자바스크립트를 이용해 서버와 브라우저가 비동기 방식으로 데이터를 교환할 수 있는 통신 기능
- 브라우저가 가지고있는 XMLHttpRequest 객체를 이용해서 전체 페이지를 새로 고치지 않고도 페이지의 일부만을 위한 데이터를 로드하는 기법
- 즉, 쉽게 말하자면 자바스크립트를 통해서 서버에 데이터를 비동기 방식으로 요청하는 것이다.
- 브라우저에서 http통신을 사용함.
XMLHttpRequest(XHR)
- XMLHttpRequest(XHR) 객체는 서버와 상호작용하기 위하여 사용. 전체 페이지의 새로고침없이도 URL 로부터 데이터를 받아올 수 있다.
- XMLHttpRequest 는 이름으로만 봐서는 XML 만 받아올 수 있을 것 같아 보이지만, 모든 종류의 데이터를 받아오는데 사용할 수 있습니다. 또한 HTTP 이외의 프로토콜도 지원합니다(file 과 ftp 포함).
Ajax 의 단점
- 히스토리 관리가 안 된다. (보안에 좀 더 신경을 써야한다.)
- 연속으로 데이터를 요청하면 서버 부하가 증가할 수 있다.
- XMLHttpRequest를 통해 통신을 하는 경우사용자에게 아무런 진행 정보가 주어지지 않는다. 그래서 아직 요청이 완료되지 않았는데 사용자가 페이지를 떠나거나 오작동할 우려가 발생하게 된다.
- 동일-출처 정책으로 인하여 다른 도메인과는 통신이 불가능하다. (Cross-Domain문제)
728x90
'네트워크' 카테고리의 다른 글
각종 타임아웃(timeout)설명과 설정 팁 (0) | 2024.02.04 |
---|---|
ip란? (0) | 2021.12.27 |
HTTP란? (0) | 2021.12.24 |