Fetch API
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2017.
* Some parts of this feature may have varying levels of support.
Fetch API는 네트워크 통신을 포함한 리소스 취득을 위한 인터페이스를 제공하며, XMLHttpRequest
보다 강력하고 유연한 대체제입니다.
참고 : 이 기능은 Web Worker에서 사용할 수 있습니다.
개념과 사용법
Fetch API는 Request
와 Response
객체, 그리고 기타 네트워크 요청에 관련된 것들을 사용하고, CORS와 HTTP Origin 헤더 행동 등 관련한 개념도 포함하고 있습니다.
요청을 생성하고 리소스를 취득하려면 fetch
메서드를 사용하세요. fetch()
는 Window
와 Worker
컨텍스트 양쪽에서 모두 사용할 수 있는 전역 메서드입니다. 그러므로 리소스를 취득할 상황이 생기는 거의 모든 컨텍스트에서 사용할 수 있습니다.
fetch()
메서드는 하나의 필수 매개변수로 가져오려는 리소스 경로를 받습니다. 반환 값은 해당 요청에 대한 Response
로 이행하는 Promise
인데, 서버가 헤더를 포함한 응답을 하는 순간 이행합니다. 이는 서버가 HTTP 오류 응답 코드로 응답해도 이행한다는 뜻입니다. 선택 사항으로, 두 번째 매개변수에 init
옵션 객체를 제공할 수 있습니다(Request
를 참고하세요).
Response
를 가져온 후에는 본문 콘텐츠의 유형과 처리 방법을 정의할 수 있는 다양한 메서드를 사용할 수 있습니다.
Request()
와 Response()
생성자를 직접 호출해서 요청과 응답을 생성할 수 있지만, 이런 사용법은 흔치 않습니다. 보통 이 두 객체는 다른 API(예를 들어, 서비스 워커의 FetchEvent.respondWith()
)에 의해 생성됩니다.
Fetch API가 제공하는 기능의 자세한 정보는 Fetch 사용하기에서, 개념 학습은 Fetch 기본 개념에서 확인하세요.
Fetch 인터페이스
명세서
Specification |
---|
Fetch Standard # fetch-method |
브라우저 호환성
BCD tables only load in the browser