Ajax에 대해서 간단하게 개념을 잡고 가고자 한다.
Ajax (Asynchronous Javascript and Xml) 의미
Ajax는 빠르게 동작하는 동적인 웹 페이지를 만들기 위한 개발 기법이다.
브라우저가 가지고 있는 XMLHttpRequest 객체를 이용해서 웹 페이지의 일부만을 서버와 통신하여 로드하는 기법이다.
자바스크립트를 사용한 비동기 통신이며, 클라이언트와 서버 간에 XML 데이터를 주고받는 기술이다.
Ajax 장점
- 웹 페이지 전체를 재 로딩하지 않고도 웹 페이지의 일부분을 갱신할 수 있다.
- 웹 페이지가 로드된 이후에 서버로 데이터 요청을 보내고 받을 수 있다.
- 웹페이지의 속도 향상
- 백그라운드 영역에서 서버로 데이터를 보낼 수 있다.
Ajax 단점
- 페이지가 이동하지 않기 때문에 보안에 주의해야 한다.
- 연속으로 데이터 요청 시 서버에 부하가 발생할 수 있다.
- Ajax로는 바이너리 데이터를 보내거나 받을 수 없다.
- 히스토리 관리가 되지 않는다.
- XMLHttpRequest를 통하여 통신하는 경우 사용자에게 진행 정보가 주어지지 않는다.
Ajax 사용 이유
HTTP프로토콜은 클라이언트에서 Request를 보내고 Server에서 Response를 받으면 이어졌던 연결이 끊기게 되어있다.
그래서 웹 페이지를 갱신하기 위해서는 다시 Request를 하고 Response를 하여 페이지 전체를 갱신하게 된다.
하지만 이럴 경우 페이지의 일부만 갱신할 경우에도 웹 페이지 전체를 다시 로드해야 하여 자원 낭비와 시간 낭비를 야기한다. 하지만 Ajax는 html 페이지 전체가 아닌 일부만 갱신할 수 있도록 XML HttpRequest객체를 통해 서버에 Request를 한다. 이 경우 Json 혹은 XML형태로 필요한 데이터만 받아 갱신하기 때문에 그만큼 자원과 시간을 아낄 수 있다. 간단하게 속도 향상에 크게 기여한다.
반응형
'Front > javascript' 카테고리의 다른 글
[javascript] 일반 전화번호 포함 유효성 검사 (0) | 2022.11.29 |
---|---|
[JavaScript] input 입력 글자수 제한 하기 (0) | 2022.07.06 |
[JAVASCRIPT] 출력 방법 (0) | 2021.12.19 |
[JavaScript] 호이스팅(Hoisting) 이란 (0) | 2021.12.13 |
[이클립스] javascript 자동 완성 기능 설정하기 (0) | 2021.12.02 |