Axios를 사용하여 클라이언트 측에서 CSV 파일 생성하기

Axios는 JavaScript에서 가장 인기있는 HTTP 클라이언트 라이브러리 중 하나입니다. 이를 사용하여 서버에서 데이터를 가져오거나 서버로 데이터를 전송할 수 있습니다. 이번 글에서는 Axios를 사용하여 클라이언트 측에서 CSV 파일을 생성하는 방법에 대해 알아보겠습니다.

1. Axios 설치

먼저, Axios를 사용하기 위해 npm을 사용하여 패키지를 설치해야 합니다. 프로젝트 폴더에서 다음 명령을 실행해주세요:

npm install axios

2. CSV 파일 생성

Axios를 사용하여 CSV 파일을 생성하기 위해서는 먼저 서버로부터 데이터를 가져와야 합니다. 아래의 예제는 서버로부터 데이터를 가져오고, 이를 CSV 파일로 변환하여 다운로드하는 방법을 보여줍니다:

const axios = require('axios');
const fs = require('fs');
const csv = require('csv');

axios.get('http://example.com/data')
  .then(response => {
    // 가져온 데이터를 CSV 형식으로 변환
    const csvData = csv.stringify(response.data);

    // CSV 파일로 저장
    fs.writeFile('data.csv', csvData, err => {
      if (err) {
        console.error(err);
      } else {
        console.log('CSV 파일이 생성되었습니다!');
      }
    });
  })
  .catch(error => {
    console.error(error);
  });

위의 코드는 먼저 Axios를 사용하여 ‘http://example.com/data’로 GET 요청을 보내 데이터를 가져옵니다. 가져온 데이터는 CSV.stringify() 함수를 사용하여 CSV 형식으로 변환됩니다. 그리고 fs.writeFile() 함수를 사용하여 변환된 CSV 데이터를 ‘data.csv’ 파일로 저장합니다.

위의 예제 코드를 실행하면 서버로부터 받은 데이터가 CSV 파일로 생성됩니다.

마무리

Axios를 사용하여 클라이언트 측에서 CSV 파일을 생성하는 방법에 대해 알아보았습니다. 이를 통해 데이터를 가져오고 변환하여 클라이언트에서 다운로드할 수 있습니다. Axios는 간편한 HTTP 요청 처리를 제공하므로 프론트엔드 개발에 유용한 도구입니다.

#Axios #CSV