Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. APIs da Web
  3. AbortSignal

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

AbortSignal

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since abril de 2018.

* Some parts of this feature may have varying levels of support.

Experimental:Esta é umatecnologia experimental
Verifique atabela de compatibilidade entre Navegadores cuidadosamente antes de usar essa funcionalidade em produção.

A interfaceAbortSignal representa o sinal de um objeto que permite a você se comunicar com uma Requisição de DOM (como Fetch) e aborta-la se necessário via um objetoAbortController

Propriedades

A interface AbortSignal também herda propriedades de sua interface pai,EventTarget.

AbortSignal.abortedSomente leitura

UmBoolean que indica quando a(s) Request(s) com a qual o sinal está se comunicando está/estão abortadas(true) ou não(false).

Handlers de Eventos

AbortSignal.onabort

Invocado quando umabort evento dispara, ex: quando as requests do DOM que o sinal estão se comunicando são/estão abortadas.

Métodos

A interface AbortSignal também herda métodos de sua interface pai,EventTarget.

Exemplos

No exemplo de código a seguir, nós vamos focar em fazer download de um vídeo usando aFetch API.

Nós primeiro criaremos um controller usando o construtor doAbortController(), e então pegar a referência de seu objetoAbortSignal associado usando a propriedadeAbortController.signal.

Quando arequisição Fetch é iniciada, nós passamos oAbortSignal como uma opção dentro do objeto de opções da request (veja{signal}, abaixo). Isso associa o sinal e o controller com a requisição fetch e nos permite aborta-la chamandoAbortController.abort(), como visto abaixo no segundoevent listener.

js
var controller = new AbortController();var signal = controller.signal;var downloadBtn = document.querySelector('.download');var abortBtn = document.querySelector('.abort');downloadBtn.addEventListener('click', fetchVideo);abortBtn.addEventListener('click', function() {  controller.abort();  console.log('Download aborted');});function fetchVideo() {  ...  fetch(url, {signal}).then(function(response) {    ...  }).catch(function(e) {    reports.textContent = 'Download error: ' + e.message;  })}

Nota:Quandoabort() é chamado, a promessa dofetch() é rejeitada com umAbortError.

Você pode encontrar um exemplo completo no GitHub — vejaabort-api (see it running live also).

Especificações

Specification
DOM
# interface-AbortSignal

Compatibilidade com navegadores

Veja Também

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2026 Movatter.jp