이동:

초안
이 문서는 작성중입니다.

Fetch 는 네트워크 통신을 포함한 리소스를 가지고 오기 위한 인터페이스를 제공해주는 보다 새로운 API입니다. XMLHttpRequest 와 기능은 같지만 확장 가능하며 효과적으로 구성되어 있습니다. 이 문서에서는 Fetch API의 기본 컨셉들중 일부를 소개합니다.

이 문서는 수시로 갱신됩니다 。보다 나은 설명이 필요한 Fetch 컨셉트를 발견한 경우에는、MDN 디스커션 포럼이나 Mozilla IRC(#mdn room)에 연락주시기 바랍니다.

개념

Fetch의 핵심은 인터페이스의 추상화입니다. HTTP Request, Response, Headers, Body의 Payload, 그리고 비동기 리소스 Request의 초기화를 위한global fetch메서드가 이 대상입니다. HTTP의 주요 컴포넌트가 자바스크립트 오브젝트로써 추상화되어있기 때문에 다른 API에서 이러한 기능들을 사용하기 쉽게 해줍니다.

Service Worker는 Fetch를 사용하는 API의 일례입니다.

Fetch는 이러한 Request의 비동기적인 성질을 한걸음 진화시킨 Promise 베이스의 API입니다.

가드

가드는 Headers 객체의 기능으로, 헤더가 사용하고 있는 장소에 알맞게 immutablerequestrequest-no-corsresponsenone값을 얻습니다.

Headers()의 constructor를 사용하고 있는 새로운  Headers객체가 생성될 때, 가드는 기본 설정일때 none에 위치됩니다. Request객체나 Response객체가 생성되었을 때, 관계지어진 Headers객체의 가드는 아래의 명세와 같이 설정되어 있습니다.

새로운 객체형 생성자 관계한Headers 객체 가드의 설정
Request Request() request
no-cors의 mode를 설정한 Request() request-no-cors
Response Response() response
error()메서드나 redirect() 메서드 immutable

헤더 가드는 헤더의 콘텐츠를 변경하는 set()delete(),append()메서드에 영향을 끼칩니다.가드는 immutable의 Headers를 수정하려고 한 경우, TypeError를 반환합니다. 예외의 경우도 있는데 다음과 같은 상황에서는 동작합니다.

문서 태그 및 공헌자

이 페이지의 공헌자: BANIP
최종 변경: BANIP,