[javascript] Axios를 사용하여 API 데이터를 가져와 화면에 렌더링하는 방법

Axios는 자바스크립트에서 널리 사용되는 HTTP 클라이언트 라이브러리입니다. 이를 사용하여 API 데이터를 가져와서 웹 페이지나 애플리케이션에서 동적으로 화면에 렌더링할 수 있습니다. 이 가이드에서는 Axios를 사용하여 API 데이터를 가져와서 화면에 렌더링하는 방법을 설명하겠습니다.

1. Axios 설치하기

먼저, Axios를 설치해야 합니다. npm을 사용하여 설치할 수 있습니다. 다음 명령을 사용하여 Axios를 설치합니다.

npm install axios

2. API 데이터 가져오기

Axios를 사용하여 API 데이터를 가져오려면 Axios의 get 메서드를 사용해야 합니다. 아래의 예제 코드는 Axios를 사용하여 API의 JSON 데이터를 가져오는 방법을 보여줍니다.

import axios from 'axios';

axios.get('https://api.example.com/data')
  .then((response) => {
    const data = response.data;
    // 데이터를 활용하여 렌더링 로직을 작성합니다.
  })
  .catch((error) => {
    console.error(error);
  });

위의 코드에서는 https://api.example.com/data라는 API 엔드포인트로 GET 요청을 보내고, 성공적으로 응답이 오면 response 객체의 data 속성을 통해 데이터에 접근합니다. 적절한 오류 처리를 위해 catch 메서드로 에러를 처리할 수도 있습니다.

3. 데이터를 활용하여 화면에 렌더링하기

API에서 가져온 데이터를 활용하여 화면에 렌더링하는 방법은 프로젝트의 요구 사항에 따라 달라집니다. 일반적으로 React나 Vue와 같은 프론트엔드 프레임워크를 사용하여 데이터를 활용하여 리액트 컴포넌트나 뷰 템플릿에 데이터를 바인딩하는 방식으로 렌더링을 수행할 수 있습니다.

React를 사용하는 예시 코드는 다음과 같습니다.

import React, { useEffect, useState } from 'react';
import axios from 'axios';

function MyComponent() {
  const [data, setData] = useState([]);

  useEffect(() => {
    axios.get('https://api.example.com/data')
      .then((response) => {
        const data = response.data;
        setData(data); // 데이터 상태 업데이트
      })
      .catch((error) => {
        console.error(error);
      });
  }, []);

  return (
    <div>
      {/* 데이터를 활용하여 렌더링 */}
      {data.map((item) => (
        <p key={item.id}>{item.name}</p>
      ))}
    </div>
  );
}

위의 코드에서는 React의 useState 훅을 사용하여 data 상태를 생성하고, useEffect 훅을 사용하여 컴포넌트가 마운트될 때 API에서 데이터를 가져오고 data 상태를 업데이트합니다. 그리고 data를 사용하여 렌더링합니다.

이와 유사한 방법으로 Vue나 Angular와 같은 다른 프론트엔드 프레임워크 또는 라이브러리에서도 Axios를 사용하여 API 데이터를 가져오고 화면에 렌더링할 수 있습니다.

이제 Axios를 사용하여 API 데이터를 가져와서 화면에 렌더링하는 방법에 대해 알아보았습니다. Axios는 간단하고 효과적인 방법으로 API와 상호작용할 수 있는 도구입니다. 추가적인 자세한 내용은 Axios 공식 문서를 참고하시기 바랍니다.