Request: keepalive プロパティ

keepaliveRequest インターフェイスの読み取り専用プロパティで、リクエストの keepalive 設定(true または false)が含まれており、これは、リクエストが完全に完了する前にそのリクエストを開始したページが読み込まれなくなった場合に、関連するリクエストをブラウザーが維持するかどうかを示します。

これにより、例えば、ユーザーがページから離れたり閉じたりした場合でも、 fetch() リクエストによってセッションの終わりに分析データを送信することができます。 これは、同じ目的で Navigator.sendBeacon() を使用するよりも、 POST 以外の HTTP メソッドを使用できる、リクエストプロパティをカスタマイズできる、フェッチのプロミス (Promise) が履行されるサーバーレスポンスにアクセスできる、といった利点があります。 サービスワーカーでも利用できます。

論理値で、このリクエストの keepalive の状態を示します。

keepalive のリクエストを作成

次のスニペットでは、新しいリクエストを Request() コンストラクターで keepalivetrue に設定して作成してから、変数へそのリクエストの keepalive の値を保存します。

js
const options = {
  keepalive: true,
};

const myRequest = new Request("flowers.jpg", options);
let myKeepAlive = myRequest.keepalive; // true

仕様書

Specification
Fetch
# ref-for-dom-request-keepalive②

ブラウザーの互換性

BCD tables only load in the browser

関連情報