📂 위클리 페이퍼
[6주차] AJAX란?
아니원
2023. 12. 6. 17:23
📌 AJAX에 대해 설명해 주세요.
AJAX란?
AJAX
: Asynchronous JavaScript And XML
- JavaScript를 사용해서
client
와 server
가 Asynchronous하게 통신하는 웹 페이지를 만드는 개발 기법 중 하나다.
- 여기서 통신은 client가
request
를 보내고, server가 response
를 보내주는 것을 의미한다.
- 비동기적 통신 방법 중 하나라고 이해해도 된다.
- 다음과 같은 데이터 타입들로 AJAX 통신을 할 수 있다.
- JSON
<< HOT!
- XML
- HTML
- TEXT 등
AJAX가 왜 필요해?
- 초반의 웹은 화면의 일부분만 바뀌더라도, 아예 새로운 페이지를 로드하는 방식이었다.
- HTTP 프로토콜이 Request를 보내고 그에 대한 Response를 받으면 연결이 끊어지는 방식이기 때문에, 새로운 요청이 있을 경우 매번 다시 연결을 해야 하기 때문이다.
- 이런 방식은 매우 비효율적이며 일부분만 바꾸는 것에도 굉장한 자원과 시간 비용을 소모하게 된다.
- AJAX는
XMLHttpRequest
객체를 통해 서버에 request하고, JSON이나 XML 형태로 필요한 데이터만 받아 갱신하므로 자원과 시간을 아낄 수 있다.
- 실무에서는 주로 AJAX 통신 기능을 제공하는
fetch
함수와 axios
패키지를 사용한다.
- 따라서, 아예 새로운 페이지를 로드하지 않고, 일부분만 갱신하기 위해 AJAX가 도입되었다.
AJAX의 A를 담당하는 Asynchronous란?
- 현재 화면에 영향을 미치지 않고
background
에서 서버와 통신하는 방식이다.
- 따라서 AJAX는 현재 페이지를 그대로 유지한 채로, background에서 서버와의 작업을 처리해 그 결과대로 페이지를 변화시키는 것이다.
AJAX의 단점
- 히스토리 관리가 되지 않는다.
- 페이지 이동을 하지 않고 통신을 하기 때문에 보안 상의 문제가 있다.
- AJAX를 쓸 수 없는 브라우저에 대한 문제 이슈가 있다.
'📂 위클리 페이퍼' Related Articles