Axios는 브라우저, Node.js를 위한 Promise API를 활용하는 HTTP 비동기 통신 라이브러리다.
Promise 객체는 비동기 작업이 맞이할 미래의 완료 또는 실패와 그 결과 값을 나타냄
웹사이트 취약점 공격의 하나로, 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 하는 공격
npm install axios
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
url
속성만 필수이고, 나머지 속성은 옵션이다.
axios({
method: 'get', // `method`는 요청을 할 때 사용될 메소드 이름입니다.
url: '/user/12345', // `url`은 요청에 사용될 서버 URL입니다.
data: { // `data`는 요청 본문(request body)으로 전송할 데이터입니다.
// 'PUT', 'POST' 및 'PATCH' 요청 메소드에만 적용 가능합니다.
firstName: 'Fred',
lastName: 'Flintstone'
}
});
//예시
//callback
axios.get('/details')
.then(function (response) {
// 성공했을 때
console.log(response);
})
.catch(function (error) {
// 에러가 났을 때
console.log(error);
})
.finally(function () {
// 항상 실행되는 함수
});
// async await 함수를 사용할 때,
try {
const data = await axios.get("url");
} catch {
// 오류 발생시 실행되는 함수
}
📒 Callback 함수 = 간단히 말하면, 함수 안에서 실행하는 또 다른 함수(나중에 자세히 알아보자)
📒 async await 함수 = async 와 같이 await가 쓰이는데 메서드 앞에 async 를 사용하고 내부에 await를 사용해 비동기 통신 요청을 처리함, 이때는 try, catch 구문 활용 (이것도 나중에 포스팅 하겠다😎)
//대표적인 메소드
axios.get(url[, config]) // GET
axios.post(url[, data[, config]]) // POST
axios.put(url[, data[, config]]) // PUT
axios.delete(url[, config]) // DELETE
// 그외 사용가능한 메소드
axios.patch(url[, data[, config]]) //PATCH
axios.request(config) //REQUEST
axios.head(url[, config]) //HEAD
axios.options(url[, config]) //OPTIONS
axios.getUri([config]) //GETURI
위에 러닝 가이드는 정말 알기 쉽게 잘 정리되어있다, 꼭 추천한다 👍