このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

Request: signal プロパティ

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2019年3月⁩.

メモ: この機能はウェブワーカー内で利用可能です。

signalRequest インターフェイスの読み取り専用プロパティで、このリクエストに関連付けられた AbortSignal を返します。

AbortSignal オブジェクトです。

js
// 新しい中止コントローラーを作成 const controller = new AbortController(); // このコントローラーの AbortSignal オブジェクトを使用してリクエストを作成 const req = new Request("/", { signal: controller.signal }); // 中止された場合にメッセージをログ出力するイベントハンドラーを追加 req.signal.addEventListener("abort", () => { console.log("abort"); }); // 中止された場合は、AbortSignalの理由をログ出力 fetch(req).catch(() => { if (req.signal.aborted) { if (req.signal.reason) { console.log(`リクエストは ${req.signal.reason} が原因で中止されました。`); } else { console.log("リクエストは中止されましたが、理由は示されませんでした。"); } } else { console.log("リクエストは中止されませんでしたが、異常終了しました。"); } }); // 実際にリクエストを中止 controller.abort(); 

仕様書

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

ブラウザーの互換性