반응형

AJAX(Asynchronous JavaScript and XML)


AJAX는 Asynchronous JavaScript and XML의 약어로, 비동기적으로 서버와 데이터를 주고받는 기술을 의미한다.

이를 사용하면 페이지 전체를 새로고침하지 않고도 데이터를 동적으로 로드할 수 있으므로, 웹 페이지의 사용자 경험을 개선할 수 있다.

 

 

  1. AJAX의 동작 방식

    AJAX는 XMLHTTPRequest 객체를 사용하여 서버로 데이터를 요청하고, 응답을 처리하는 방식으로 동작한다.
    먼저, JavaScript 코드에서 XMLHTTPRequest 객체를 생성하고, 요청할 데이터의 URL을 지정한다.
    그리고, 해당 요청을 서버로 전송하고, 서버에서 응답이 올 때까지 기다린다.
    서버에서 응답이 도착하면, JavaScript 코드에서 해당 응답을 처리하고 웹 페이지의 적절한 위치에 동적으로 데이터를 추가하거나 변경한다.


  2. AJAX의 장/단점
    •  🟢장점:
      • 전체 페이지를 새로고침하지 않아도 되므로, 웹 페이지의 사용자 경험을 개선할 수 있다.
      • 서버로 데이터를 요청하는 과정이 비동기적으로 처리되므로, 웹 페이지의 반응성을 향상시킬 수 있다.
      • JSON이나 XML 형태의 데이터를 사용할 수 있으므로, 서버와 클라이언트 간의 데이터 교환에 용이하다.
    • 🔴단점:
      • AJAX 요청에 대한 응답이 늦어질 경우, 사용자 경험에 영향을 미칠 수 있다.
      • 검색 엔진 최적화(SEO)에 불리할 수 있다.
      • 보안 문제가 발생할 수 있다.

  3. AJAX의 예시 코드

    아래 코드에서는 jQuery의 ajax 함수를 사용하여, http://example.com/data 주소로 GET 요청을 보내고,
    요청에 대한 응답이 성공할 경우 success 함수를 호출하고, 요청에 대한 응답이 실패할 경우 error 함수를 호출한다.
    이러한 방식으로 AJAX를 사용하여 서버와 데이터를 비동기적으로 주고받는 방법을 구현할 수 있다.
$.ajax({
  url: "http://example.com/data",
  method: "GET",
  dataType: "json",
  success: function(data) {
    // 요청에 대한 응답이 성공적으로 완료되었을 때 처리할 코드
    console.log(data);
  },
  error: function(xhr, status, error) {
    // 요청에 대한 응답이 실패했을 때 처리할 코드
    console.error(error);
  }
});
반응형