Heim >Web-Frontend >js-Tutorial >AbortController mit Fetch

AbortController mit Fetch

王林
王林Original
2024-09-12 10:31:06938Durchsuche

AbortController with Fetch

Der AbortController in JavaScript ist ein Dienstprogramm zum Abbrechen oder Abbrechen asynchroner Vorgänge wie Abrufanforderungen oder anderer Aufgaben wie Ereignis-Listener, deren Abschluss einige Zeit in Anspruch nehmen kann. Es ermöglicht Ihnen, einen nicht mehr benötigten Vorgang zu stoppen, was zur Verbesserung der Leistung und zur Verwaltung von Ressourcen nützlich ist.

Beispielanwendungsfall:

// Create an AbortController instance
const controller = new AbortController();
const signal = controller.signal;

// Start a fetch request with the signal attached
fetch('https://api.example.com/data', { signal })
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(err => {
    if (err.name === 'AbortError') {
      console.log('Fetch request was aborted');
    } else {
      console.error('Fetch error:', err);
    }
  });

// If we need to cancel the request:
controller.abort(); // This will abort the fetch request

  1. Controller: Der AbortController erstellt einen Controller, der den Abbruchvorgang verwaltet.

  2. Signal: Der AbortController verfügt über eine Signaleigenschaft, die Sie an Funktionen wie fetch() übergeben können. Dieses Signal wird verwendet, um zu kommunizieren, wann der Vorgang abgebrochen werden soll.

  3. abort()-Methode: Wenn Sie die abort()-Methode aufrufen, löst sie das Signal aus und bricht den Vorgang ab.

Das obige ist der detaillierte Inhalt vonAbortController mit Fetch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn