[javascript] 비동기 데이터 요청을 이용한 동적 콘텐츠 로딩

현대 웹 애플리케이션에서는 동적으로 콘텐츠를 로딩하는 것이 매우 중요합니다. 사용자가 페이지를 새로고침하지 않고도 새로운 데이터를 가져와서 보여줄 수 있기 때문에 사용성이 크게 향상됩니다. 이러한 동적 콘텐츠 로딩을 위해 비동기 데이터 요청을 사용하는 것이 일반적입니다.

비동기 데이터 요청이란?

비동기 데이터 요청은 웹 페이지가 로딩되는 동안에도 서버로부터 데이터를 가져와서 화면에 표시할 수 있도록 하는 기술입니다. 이를 통해 사용자는 페이지 전체를 다시 로딩하지 않고도 최신 정보를 얻을 수 있습니다.

XMLHttpRequest를 이용한 데이터 요청

가장 전통적인 방법인 XMLHttpRequest를 이용한 데이터 요청은 아래와 같이 구현할 수 있습니다.

var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://api.example.com/data', true);
xhr.onreadystatechange = function() {
  if (xhr.readyState === 4 && xhr.status === 200) {
    var data = JSON.parse(xhr.responseText);
    // 데이터를 처리하는 로직
  }
};
xhr.send();

Fetch API를 이용한 데이터 요청

최근에는 Fetch APIXMLHttpRequest를 대체하는 추세입니다. Fetch를 사용하면 아래와 같이 간단한 코드로 데이터를 요청할 수 있습니다.

fetch('https://api.example.com/data')
  .then(response => response.json())
  .then(data => {
    // 데이터를 처리하는 로직
  });

Axios를 이용한 데이터 요청

AxiosXMLHttpRequestFetch보다 더 심플하고 유연한 방법으로 데이터를 요청할 수 있는 라이브러리입니다. 아래는 Axios를 이용한 데이터 요청 예시입니다.

axios.get('https://api.example.com/data')
  .then(response => {
    var data = response.data;
    // 데이터를 처리하는 로직
  });

마치며

웹 애플리케이션에서 비동기 데이터 요청을 통한 동적 콘텐츠 로딩은 매우 중요한 기술입니다. 이러한 기술을 잘 활용하면 사용자 경험을 향상시키는 데 큰 도움이 될 것입니다.

참고문헌: