Azure Abort Controller biblioteca cliente para JavaScript - versión 2.2.0

El @azure/abort-controller paquete proporciona AbortSignalLike interfaces y AbortError clases para facilitar el trabajo con el AbortController y el AbortSignalfetch utilizado por integrados en plataformas JavaScript modernas.

Los clientes del SDK de Azure para JavaScript en general no necesitan usar esta biblioteca. En su lugar, utilizan AbortController y AbortSignal son proporcionados por sus plataformas y transmiten las señales de aborto a las operaciones del SDK de Azure.

Vínculos clave:

Cómo empezar

Installation

Instale esta biblioteca usando npm de la siguiente manera

npm install @azure/abort-controller

Conceptos clave

Úsalo AbortController para crear un AbortSignal que luego puede ser pasado a operaciones del SDK de Azure para cancelar trabajos pendientes. Se puede AbortSignal acceder a la propiedad signal en un instanciado AbortController. An AbortSignal también puede ser devuelta directamente desde un método estático, por ejemplo, AbortSignal.timeout(100). que se cancela tras 100 milisegundos.

Examples

Los ejemplos siguientes asumen que doAsyncWork es una función que toma un conjunto de propiedades, una de las cuales es la señal de aborto.

Ejemplo 1 - uso básico

async function doAsyncWork(options: { abortSignal: AbortSignal }): Promise<void> {
  if (options.abortSignal.aborted) {
    return;
  }

  // do async work
}

const controller = new AbortController();
doAsyncWork({ abortSignal: controller.signal });

// at some point later
controller.abort();

Ejemplo 2 - Abortar con tiempo de espera

async function doAsyncWork(options: { abortSignal: AbortSignal }): Promise<void> {
  if (options.abortSignal.aborted) {
    return;
  }

  // do async work
}

const signal = AbortSignal.timeout(1000);
doAsyncWork({ abortSignal: signal });

Pasos siguientes

Puede compilar y ejecutar las pruebas localmente ejecutando npm run test. Explore la carpeta test para ver el uso avanzado y el comportamiento de las clases públicas.

Troubleshooting

Si tienes problemas mientras usas esta biblioteca, no dudes en presenta un problema.

Contributing

Si desea contribuir a esta biblioteca, lea la guía de contribución de para obtener más información sobre cómo compilar y probar el código.