[typescript] Axios를 사용하여 HTTP 요청 보내기
Axios는 Node.js와 브라우저를 위한 Promise 기반의 HTTP 클라이언트입니다. 이 기술을 TypeScript와 함께 사용하여 서버 또는 클라이언트에서 HTTP 요청을 보낼 수 있습니다.
이번 게시물에서는 Axios를 TypeScript 프로젝트에서 어떻게 사용하는지에 대해 알아보겠습니다.
목차
- Axios 및 TypeScript 설치
- Axios를 사용하여 GET 요청 보내기
- Axios를 사용하여 POST 요청 보내기
- Axios 인터셉터 사용하기
1. Axios 및 TypeScript 설치
먼저 프로젝트에 Axios를 설치해야 합니다. npm을 사용하여 다음 명령어를 실행합니다.
npm install axios
또한 TypeScript에서 Axios를 사용하기 위해 @types/axios
패키지를 설치해야 합니다.
npm install @types/axios
2. Axios를 사용하여 GET 요청 보내기
GET 요청을 보내는 방법은 매우 간단합니다. Axios의 get
함수를 사용하여 원하는 엔드포인트로 요청을 보낼 수 있습니다.
import axios, { AxiosResponse } from 'axios';
async function fetchUserData(): Promise<void> {
try {
const response: AxiosResponse = await axios.get('https://api.example.com/users');
console.log(response.data);
} catch (error) {
console.error('Error fetching user data:', error);
}
}
3. Axios를 사용하여 POST 요청 보내기
POST 요청을 보내는 과정도 비슷합니다. Axios의 post
함수를 사용하여 데이터를 함께 보낼 수 있습니다.
async function createUser(userData: object): Promise<void> {
try {
const response: AxiosResponse = await axios.post('https://api.example.com/users', userData);
console.log('User created:', response.data);
} catch (error) {
console.error('Error creating user:', error);
}
}
4. Axios 인터셉터 사용하기
Axios 인터셉터를 사용하면 HTTP 요청과 응답을 가로채서 수정할 수 있습니다. 예를 들어, 모든 요청에 헤더를 추가하거나 에러 응답을 처리하는 등의 작업을 할 수 있습니다.
axios.interceptors.request.use((config) => {
config.headers.Authorization = `Bearer ${localStorage.getItem('token')}`;
return config;
});
마무리
이제 Axios를 TypeScript 프로젝트에서 어떻게 사용하는지에 대해 간단히 살펴보았습니다. Axios를 통해 간편하게 HTTP 요청을 보내고 응답을 처리할 수 있어서 많은 개발자들이 선호하는 HTTP 클라이언트 라이브러리 중 하나입니다.
더 많은 정보는 Axios 공식 문서에서 확인할 수 있습니다.