Post

fetch의 기본 사용법

fetch() 함수: 데이터 통신의 간편한 해결책

안녕하세요! 오늘은 웹 개발에서 자주 활용되는 fetch API에 대해 알아보려 합니다. fetch API는 JavaScript에서 서버와의 데이터 통신을 비동기적으로 처리하는 강력한 도구입니다. 간단한 몇 줄의 코드로 HTTP 요청을 보내고 응답을 처리할 수 있어, 웹 애플리케이션의 개발을 효율적으로 할 수 있게 해줍니다.

fetch의 기본 사용법

fetch 함수는 웹 리소스를 불러오기 위해 사용됩니다. 가장 간단한 형태로는 리소스의 URL을 fetch 함수에 전달하는 것으로 시작합니다. 예를 들어, JSON 형식의 데이터를 가져오는 코드를 살펴보겠습니다.

1
2
3
4
fetch('https://api.example.com/data')
  .then(response => response.json()) // JSON 데이터로 변환
  .then(data => console.log(data)); // 데이터 처리
 코드는 'https://api.example.com/data' URL에서 데이터를 가져와서 JSON 형식으로 변환한  콘솔에 출력합니다. 이때 fetch 함수는 Promise 객체를 반환하며, 비동기적으로 네트워크 요청을 처리합니다.

만약 요청이 실패한다면, .catch를 사용하여 오류를 처리할 수 있습니다.

1
2
3
4
fetch('https://api.example.com/data')
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

요청 옵션 설정

fetch 함수는 두 번째 인자로 옵션 객체를 받아서 다양한 설정을 할 수 있습니다. 이를 통해 HTTP 요청 메소드, 헤더, 요청 본문 등을 설정할 수 있습니다. 예를 들어, POST 방식으로 데이터를 보내는 코드를 살펴보겠습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
fetch('https://api.example.com/data', {
  method: 'POST', // HTTP 메소드 지정
  headers: {
    'Content-Type': 'application/json' // 콘텐츠 타입 설정
  },
  body: JSON.stringify({
    name: 'John',
    age: 30
  }) // 보낼 데이터
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));

위 코드는 ‘https://api.example.com/data’ URL로 POST 요청을 보내는 예시입니다. 요청 헤더에 ‘Content-Type’을 설정하고, 요청 본문에 JSON 형식의 데이터를 전송합니다.

응답 처리 fetch 함수는 Response 객체를 반환합니다. 이 객체는 응답에 대한 정보와 함께 다양한 메서드를 제공합니다. 예를 들어, response.text()는 텍스트 형식으로 응답을 반환하고, response.blob()은 파일 데이터를 처리할 때 사용됩니다.

에러 핸들링

fetch 함수는 네트워크 요청이 실패할 경우에도 Promise를 resolve하지만, HTTP 상태 코드를 확인하여 요청이 성공했는지 여부를 판단해야 합니다. 만약 요청이 실패한다면 .catch를 사용하여 오류를 처리할 수 있습니다.

1
2
3
4
5
6
7
8
9
fetch('https://api.example.com/data')
  .then(response => {
    if (!response.ok) {
      throw new Error('Network response was not ok');
    }
    return response.json();
  })
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));

마무리 이상으로 fetch API의 기본적인 사용법을 살펴보았습니다. fetch를 활용하면 다양한 HTTP 요청을 간편하게 처리할 수 있어서, 웹 개발에 매우 유용한 도구입니다. 앞으로 다양한 활용 예제를 통해 더욱 깊이있게 이해해보도록 하겠습니다. 감사합니다!

This post is licensed under CC BY 4.0 by the author.