반응형
- Axios는 브라우저, Node.js를 위한 Promise API를 활용하는 HTTP 비동기 통신 라이브러리 아다.
- 쉽게 말해서 백엔드랑 프론트엔드랑 통신을 쉽게하기 위해 Ajax와 더불어 사용한다.
- 이미 자바스크립트에는 fetch api가 있지만, 프레임워크에서 ajax를 구현할땐 axios를 쓰는 편이라고 보면 된다.
Axios 특징
- 운영 환경에 따라 브라우저의 XMLHttpRequest 객체 또는 Node.js의 http api 사용
- Promise(ES6) API 사용
- 요청과 응답 데이터의 변형
- HTTP 요청 취소
- HTTP 요청과 응답을 JSON 형태로 자동 변경
axios vs fetch
axios | fetch |
써드파티 라이브러리로 설치가 필요 | 현대 브라우저에 빌트인이라 설치 필요 없음 |
XSRF 보호를 해준다. | 별도 보호 없음 |
data 속성을 사용 | body 속성을 사용 |
data는 object를 포함한다 | body는 문자열화 되어있다 |
status가 200이고 statusText가 ‘OK’이면 성공이다 | 응답객체가 ok 속성을 포함하면 성공이다 |
자동으로 JSON데이터 형식으로 변환된다 | .json()메서드를 사용해야 한다. |
요청을 취소할 수 있고 타임아웃을 걸 수 있다. | 해당 기능 존재 하지않음 |
HTTP 요청을 가로챌수 있음 | 기본적으로 제공하지 않음 |
download진행에 대해 기본적인 지원을 함 | 지원하지 않음 |
좀더 많은 브라우저에 지원됨 | Chrome 42+, Firefox 39+, Edge 14+, and Safari 10.1+이상에 지원 |
위와 같은 표를 보았을 때 axios는 별도의 설치가 필요하다는 단점이 있지만 그것을 커버할 만한 fetch 보다 많은 기능 지원과 문법이 조금이나마 간소화 된다는 장점이 있다는 것을 볼 수 있다.
따라서, 간단하게 사용할때는 fetch를 쓰고, 이외의 확장성을 염두해봤을 땐 axios를 쓰면 좋다고 보면 된다.
추가적으로 fetch에 대해 자세히 공부하고 싶다면, 다음 포스팅을 참고 바란다. fetch 문법과 axios 문법을 비교해보며 공부하는 방법도 좋다.
출처: https://inpa.tistory.com/entry/AXIOS-📚-설치-사용#axios란 [👨💻 Dev Scroll:티스토리]
반응형
'생각 > TIL,WIL' 카테고리의 다른 글
[TIL]2022.10.25 (0) | 2022.10.26 |
---|---|
[TIL]2022.10.24 (0) | 2022.10.25 |
[TIL]2022.10.23 (0) | 2022.10.23 |
[TIL]2022.10.21 (0) | 2022.10.22 |
[TIL]2022.10.20 (0) | 2022.10.20 |