[Node.js] http 요청 라이브러리 (axios)

2022. 4. 7. 19:07
반응형

이전 포스팅 크롤러 만들기에 사용했던 request 라이브러리와 비슷한 기능을 하는 axios를 서치해봤다.

 

https://thefirstperson.tistory.com/161

 

[Node.js] 간단한 크롤러 만들기 (feat.네이버 영화순위)

Node.js란? 자바스크립트는 스크립트 언어로, 원래는 특정한 프로그램(ex 웹브라우저) 없이는 사용할 수가 없다. Node.js는 이를 해결하기 위해 나온 것으로, 자바스크립트를 웹브라우저에서 독립시

thefirstperson.tistory.com

 

 

1. request

  • npm 초창기부터 존재해오던 모듈
  • 가장 많은 다운로드 수를 기록하고 있었으나, 2020년 2월부터 deprecated되어 더 이상 신규기능이 추가되거나 검토 사항이 반영되지 않음
  • 새로운 대안을 찾는 게 좋을 듯 싶음

 

2. axios

  • Promise를 기반으로 async/await문법을 사용
  • 구형 브라우저 지원(IE8 이상 포함 모든 최신 브라우저)
  • 응답시간 초과를 설정하는 기능 제공
  • JSON 데이터 자동 변환
  • 사용예시
const cheerio = require('cheerio');
const axios = require('axios');

const getMovies = async () => {
  try {
    return await axios
      .get('https://movie.naver.com/movie/sdb/rank/rmovie.naver')
      .then((dataa) => {
        let titles = [];
        const $ = cheerio.load(dataa.data);
        const $moviesArr = $('.tit3 a');
        $moviesArr.each((i, ele) => {
          titles[i] = $(ele).attr('title');
        });

        console.log(titles);
      });
  } catch (error) {
    console.error(error);
  }
};

getMovies();

 

반응형

BELATED ARTICLES

more