[Korean FE Article] 입문자를 위한 Axios vs Fetch
소개
Axios와 Fetch API에 대해 소개하고 비교하는 글입니다. 제목에서도 알 수 있듯이 설치방법 부터 간단한 성능 비교까지 기본적인 내용들을 다루고 있습니다. 특히 간단한 HTTP 클라이언트가 필요한데 Axios 와 Fetch API 중 고민하고 계셨던 분들께 어떤 것을 선택해야 할지 결정하는 데에 조금이나마 도움이 될 수 있을 것 같습니다:)
tl;dr
fetch 요청은 필요한 JSON 데이터의 포맷을 얻기 위해 일반적으로 두 개의 .then() 호출을 갖는 반면, Axios 는 응답 데이터를 기본적으로 JSON 타입으로 사용할 수 있습니다.
fetch로 post 요청을 할 경우에는 `JSON.stringify()`를 사용하여 객체를 문자열로 변환한 뒤 본문에 할당해야하는 반면, Axios는 자동으로 데이터를 문자열로 변환해줍니다.
fetch는 HTTP 에러 응답을 받았다고 해서 프로미스를 거부하지 않고 네트워크 장애가 발생한 경우에만 거부하는 반면, Axios는 상태코드가 2xx의 범위를 넘어가면 거부합니다.
두 클라이언트 모두 비동기이기 때문에 크게 중요하지 않을 수 있지만 fetch 가 Axios 보다 살짝 더 빠릅니다.