首頁 >web前端 >js教程 >如何在 JavaScript 中取消 Fetch() 請求?

如何在 JavaScript 中取消 Fetch() 請求?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-20 00:34:031082瀏覽

How Can I Cancel a Fetch() Request in JavaScript?

取消 HTTP Fetch() 要求:逐步指南

JavaScript 的新 fetch() API 允許開發人員高效的 HTTP 請求。然而,人們對取消飛行中請求的可能性產生了疑問。雖然最初沒有內建機制,但最近引入了一個新功能:訊號參數。

TL/DR:

截至 2017 年 9 月,取得()引入了訊號參數。不過,瀏覽器支援情況各不相同。

2020 更新:

大多數主流瀏覽器現在都支援訊號參數(Edge、Firefox、Chrome、Safari、Opera 等)。

怎麼樣運作原理:

  1. 建立一個 AbortController。
  2. 取得 AbortController 的訊號。
  3. 將訊號作為參數傳遞給 fetch()。
  4. 隨時中止請求必要。

範例:

const controller = new AbortController();
const signal = controller.signal;

fetch(urlToFetch, {
    method: 'get',
    signal: signal,
})
.then(function(response) {
    console.log(`Fetch complete. (Not aborted)`);
}).catch(function(err) {
    console.error(` Err: ${err}`);
});

controller.abort();

請注意,瀏覽器對此功能的支援可能有所不同。然而,隨著瀏覽器的不斷更新,預計很快就會提供對取消 fetch() 請求的廣泛支援。

以上是如何在 JavaScript 中取消 Fetch() 請求?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn