このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
フェッチ API
フェッチ API は(ネットワーク越しの通信を含む)リソース取得のためのインターフェイスを提供しています。これは XMLHttpRequest をより強力かつ柔軟に置き換えたものです。
概念と使用方法
フェッチ API は Request と Response オブジェクト(他にもネットワークリクエストに関係すること)と、CORS や HTTP の Origin ヘッダーの意味づけのような関連の概念を使用します。
リクエストを行ってリソースを読み取るには、fetch() メソッドを使用します。これは Window と Worker コンテキストの両方でグローバルメソッドです。このため、リソースを取得するほとんどのコンテキストで利用できます。
fetch() メソッドは必須の引数を 1 つ取り、取得したいリソースのパスを指定します。これは Promise を返します。これはサーバーがヘッダーで返答するとすぐに、サーバーレスポンスが HTTP エラーステータスであったとしても、 Response に解決します。第 2 引数は任意で、 init オプションオブジェクトを渡すことができます(Request を参照してください)。
Response を受け取ると、レスポンスに含まれるコンテンツ本体と、その処理方法を定義するための多数のメソッドが利用できるようになります。
Request() および Response() を利用することで、リクエストとレスポンスを直接作成できます。ただしこれらのオブジェクトは、FetchEvent.respondWith() のような他の API 呼び出しの結果として取得されるべきもので、直接作成しないほうが良いでしょう。
フェッチ API の詳しい利用方法は フェッチの使用を参照してください。
遅延フェッチ
fetchLater() API を使用すると、開発者は遅延フェッチをリクエストできます。これは、指定した時間が経過した後、あるいはページが閉じられたときや別のページに移動したときに送信されるものです。詳しくは、遅延フェッチの使用を参照してください。
Fetch インターフェイス
fetch()-
fetch()メソッドはリソース取得のために使用されます。 Window.fetchLater()-
遅延フェッチリクエストを行うために使用します。
DeferredRequestInit-
遅延フェッチリクエストの設定に使用できる一連のオプションを表します。
FetchLaterResult-
遅延フェッチをリクエストした結果を表します。
Headers-
リクエストとレスポンスのヘッダーを表現しています。ヘッダー情報への問い合わせや、結果による振る舞いの選択が可能です。
Request-
リソースのリクエストを表します。
Response-
リクエストに対するレスポンスを表します。
HTTP ヘッダー
deferred-fetch-
fetchLater()API の最上位クォータを制御します。 deferred-fetch-minimal-
fetchLater()API の共有クロスオリジンサブフレームクォータを制御します。
仕様書
| 仕様書 |
|---|
| Fetch> # fetch-method> |
| Fetch> # deferred-fetch> |
ブラウザーの互換性
>api.fetch
ブラウザー互換性一覧表を表示するには、JavaScript を有効にしてください。
api.Window.fetchLater
ブラウザー互換性一覧表を表示するには、JavaScript を有効にしてください。