SteadyDrills

fetch API란? 본문

웹개발

fetch API란?

Drills 2024. 9. 10. 22:14

240910

fetch API란?


fetch API는 웹 브라우저에서 네트워크 요청을 수행하는 JavaScript 인터페이스. 이를 통해 HTTP 요청을 보내고 응답을 받을 수 있으며, Promise를 기반으로 비동기 처리를 지원한다.

 

특징

  • *Promise 기반: 비동기 요청을 처리하기 위해 Promise를 사용하여 코드의 가독성과 유지보수성이 높다.
  • 간편한 문법: 직관적인 API 구조로 네트워크 요청을 쉽게 수행가능하다.
  • CORS 지원: Cross-Origin Resource Sharing을 지원하여 다른 출처의 리소스에 접근 가능하다.
  • 응답 형식 지원: JSON, 텍스트, Blob 등 다양한 형식의 응답을 처리할 수 있다.
  • 동기화: 여러 요청을 쉽게 병렬 처리할 수 있다.

 

장점

  • 비동기 처리의 용이성: 코드가 비동기적으로 실행되므로 UI가 멈추지 않고 사용자 경험이 긍정적이다.
  • 모던 웹 개발에 적합: 최신 웹 애플리케이션에서 많이 사용되며, ES6+ 문법과 잘 어울린다.
  • 유연성: 다양한 요청 옵션을 사용하여 세밀하게 요청을 조정할 수 있다.

단점

  • 브라우저 호환성: 구형 브라우저에서는 지원되지 않을 수 있어, polyfill이 필요할 수 있다.
  • HTTP 오류 처리: 네트워크 오류가 아닌 HTTP 오류(예: 404, 500 등)에 대한 처리가 별도로 필요하다.
  • 스트리밍 처리의 복잡성: 대용량 파일 다운로드 시, 응답을 스트리밍 방식으로 처리하기가 복잡할 수 있다.

 

*Promise란?

Promise는 JavaScript에서 비동기 작업의 결과를 나타내는 객체. 비동기 코드를 작성할 때, 특히 네트워크 요청이나 파일 읽기와 같은 작업에서 유용하게 사용된다. Promise는 작업이 완료되면 "이행(fulfilled)", "거부(rejected)", 또는 "대기(pending)" 상태로 변할 수 있다.

'웹개발' 카테고리의 다른 글

Team project - blame news 3일 차  (2) 2024.09.14
Team project - blame news 1 & 2일 차  (0) 2024.09.13
Django project(spartamaket_drf) - ERD  (0) 2024.09.06
Serialization란?  (0) 2024.08.30
RESTful API란?  (0) 2024.08.29