Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Membatalkan Permintaan Ambil () dalam JavaScript?

Bagaimanakah Saya Boleh Membatalkan Permintaan Ambil () dalam JavaScript?

Mary-Kate Olsen
Lepaskan: 2024-11-20 00:34:03
asal
1052 orang telah melayarinya

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

Membatalkan Permintaan HTTP Fetch(): Panduan Langkah demi Langkah

API fetch() baharu untuk JavaScript membenarkan pembangun membuat Permintaan HTTP dengan cekap. Walau bagaimanapun, persoalan timbul tentang kemungkinan membatalkan permintaan dalam penerbangan. Walaupun tiada mekanisme terbina dalam pada mulanya, ciri baharu telah diperkenalkan baru-baru ini: parameter isyarat.

TL/DR:

Sehingga September 2017, ambil () memperkenalkan parameter isyarat. Walau bagaimanapun, sokongan penyemak imbas berbeza-beza.

KEMASKINI 2020:

Kebanyakan penyemak imbas utama kini menyokong parameter isyarat (Edge, Firefox, Chrome, Safari, Opera, dll.).

Cara Ia Berfungsi:

  1. Buat an AbortController.
  2. Dapatkan isyarat AbortController.
  3. Lepaskan isyarat untuk fetch() sebagai hujah.
  4. Batalkan permintaan bila-bila masa perlu.

Contoh:

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();
Salin selepas log masuk

Sila ambil perhatian bahawa sokongan penyemak imbas untuk ciri ini mungkin berbeza-beza. Walau bagaimanapun, apabila penyemak imbas terus mengemas kini, sokongan meluas untuk membatalkan permintaan fetch() dijangka tersedia tidak lama lagi.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membatalkan Permintaan Ambil () dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan