상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - 자바스크립트에서 fetch() 메서드의 사용법은 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
`fetch()` 메서드는 JavaScript에서 HTTP 요청을 보내고 응답을 받을 수 있는 기능을 제공하는 API입니다. 이 메서드는 <a href='https://sangseek.com/sangseeks/Promise 기반/ko'>Promise 기반</a>으로 작동하여 비동기적으로 데이터를 가져오거나 보낼 수 있습니다. `fetch()`는 주로 RESTful API와 상호작용할 때 사용되며, 다양한 옵션을 통해 요청의 세부 사항을 조정할 수 있습니다. 기본 사용법 `fetch()` 메서드는 URL을 인자로 받아 <a href='https://sangseek.com/sangseeks/HTTP GET/ko'>HTTP GET</a> 요청을 보냅니다. 기본적인 사용법은 다음과 같습니다: ```javascript fetch('https://api.example.com/data') .then(response => { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); // JSON 형식으로 응답을 변환 }) .then(data => { console.log(data); // 데이터를 처리 }) .catch(error => { console.error('There has been a problem with your fetch operation:', error); }); ``` 위의 코드에서 `fetch()`는 지정된 URL에 GET 요청을 보냅니다. 응답이 오면, `response.ok` 속성을 사용하여 요청이 성공했는지 확인하고, 성공적이라면 `response.json()` 메서드를 호출하여 JSON 형식으로 변환합니다. 이후 변환된 데이터를 사용할 수 있습니다. <a href='https://sangseek.com/sangseeks/HTTP 메서드/ko'>HTTP 메서드</a> 지정 `fetch()` 메서드는 기본적으로 GET 요청을 수행하지만, 다른 HTTP 메서드(POST, PUT, DELETE 등)를 사용하려면 두 번째 인자로 옵션 객체를 전달해야 합니다. 예를 들어, POST 요청을 보내는 방법은 다음과 같습니다: ```javascript fetch('https://api.example.com/data', { method: 'POST', // HTTP 메서드 headers: { '<a href='https://sangseek.com/sangseeks/Content-Type/ko'>Content-Type</a>': 'application/json' // 요청의 콘텐츠 타입 }, body: JSON.stringify({ key: 'value' }) // 전송할 데이터 }) .then(response => response.json()) .then(data => { console.log('Success:', data); }) .catch(error => { console.error('Error:', error); }); ``` 이 예제에서는 `method` 속성을 사용하여 POST 요청을 지정하고, `headers` 속성을 통해 요청의 콘텐츠 타입을 JSON으로 설정합니다. `body` 속성에는 전송할 데이터를 JSON 문자열로 변환하여 포함합니다. 요청 및 응답 처리 `fetch()` 메서드는 다양한 응답 형식을 처리할 수 있습니다. JSON 외에도 텍스트, Blob, FormData 등 다양한 형식으로 응답을 받을 수 있습니다. 예를 들어, 텍스트 응답을 처리하는 방법은 다음과 같습니다: ```javascript fetch('https://api.example.com/text') .then(response => response.text()) // 텍스트 형식으로 변환 .then(text => { console.log(text); }) .catch(error => { console.error('Error:', error); }); ``` 에러 처리 `fetch()` 메서드는 네트워크 오류가 발생할 경우에만 Promise를 reject합니다. HTTP 오류(예: 404, 500 등)는 성공적인 응답으로 간주되므로, 이를 처리하기 위해서는 `response.ok`를 확인해야 합니다. 위의 예제에서처럼 이를 통해 에러를 처리할 수 있습니다. CORS(Cross-Origin Resource Sharing) `fetch()` 메서드를 사용할 때 CORS 정책에 주의해야 합니다. 다른 도메인에서 요청을 보낼 경우, 서버가 CORS 헤더를 설정해야 합니다. 그렇지 않으면 브라우저에서 요청이 차단됩니다. CORS 관련 오류는 개발자 도구의 콘솔에서 확인할 수 있습니다. <a href='https://sangseek.com/sangseeks/AbortController/ko'>AbortController</a>를 사용한 요청 취소 `fetch()` 요청은 `AbortController`를 사용하여 취소할 수 있습니다. 이는 특히 긴 요청이나 사용자가 <a href='https://sangseek.com/sangseeks/페이지/ko'>페이지</a>를 떠날 때 요청을 중단하고자 할 때 유용합니다. 다음은 `AbortController`를 사용하는 예제입니다: ```javascript const controller = new AbortController(); const signal = controller.signal; fetch('https://api.example.com/data', { signal }) .then(response => { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(data => { console.log(data); }) .catch(error => { if (error.name === 'AbortError') { console.log('Fetch aborted'); } else { console.error('Error:', error); } }); // 요청을 취소하고 싶을 때 controller.abort(); ``` 결론 `fetch()` 메서드는 JavaScript에서 HTTP 요청을 간편하게 처리할 수 있는 강력한 도구입니다. Promise 기반으로 비동기 처리를 지원하며, 다양한 HTTP 메서드와 응답 형식을 처리할 수 있습니다. CORS와 같은 보안 정책에 주의하면서, 필요에 따라 요청을 취소하는 기능도 활용할 수 있습니다. 이러한 기능들을 잘 활용하면, 웹 <a href='https://sangseek.com/sangseeks/애플/ko'>애플</a>리케이션에서 API와의 상호작용을 효율적으로 관리할 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기