soowanlog

Ajax 본문

프론트엔드/Javascript

Ajax

개발자솬
프론트엔드/Javascript

Ajax

개발자솬 2024. 3. 11. 14:25
728x90
반응형
 
  • Ajax 란?

Ajax (Asynchronous Javascript And XML)은 비동기 Javascript와 XML의 줄임말입니다.

 

Ajax는 서버와 통신하기 위해 XMLHttpRequest 객체를 사용하며 XML뿐만 아니라 HTML, JSON 등 다양한 포맷을 주고받을 수 있습니다.

 

Ajax를 사용한다면 웹 페이지를 갱신할 때마다 전체를 다시 로딩하지 않고, 필요한 이 부분만 갱신할 수 있기 때문에 시간과 자원을 아낄 수 있습니다. 또한, 서버에서 데이터만 전송하면 되어 전체적인 코드의 양이 줄어듭니다.

※ XML(Extensible Markup Language)


XML은 HTML과 달리 태그를 사용자임의로 만들 수 있음.XML은 특정 데이터를 설명하기 위해 임의로 이름을 지은 태그로 데이터를 감싸고 있음. 즉, Markup Language를 정의하기 위한 언어라고 할 수 있음.
  • Ajax 동작원리

1. 사용자에 의한 요청 이벤트가 발생합니다.

2. Event Handler에 의해 Javascript가 호출됩니다.

3. Javascript는 XMLHttpRequest 객체를 사용하여 서버로 요청을 보냅니다.

4. 서버는 전달받은 XMLHttpRequest 객체를 가지고 Ajax 요청을 처리합니다.

5. 6. 서버는 처리한 결과를 HTML, XML 또는 JSON 형태의 데이터로 웹 브라우저에게 전달합니다.

7. 서버로부터 전달받은 데이터를 가지고 웹 페이지의 일부분만을 갱신하는 Javascript를 호출합니다.

8. 웹 페이지가 필요로했던 부분만 다시 로딩되어 표시됩니다.

 

  • Ajax의 단점

Ajax 는 클라이언트가 서버에 데이터를 요청하는 Client Pooling 방식을 사용하므로, Server Push 방식의 실시간 서비스를 구현할 수 없습니다.

브라우저에서 Javascript를 사용하여 비동기 통신을 하기 때문에 보안에 취약할 수 있습니다.

참    고    자    료

- Ajax란 무엇일까? | 한서연

 

- AJAX란? | Baeg-won

728x90
반응형

'프론트엔드 > Javascript' 카테고리의 다른 글

동기, 비동기  (4) 2024.03.11
Javascript  (0) 2024.03.09