你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
该 @azure/abort-controller 软件包提供了 AbortSignalLike 界面和 AbortError 类,使得更方便地使用 AbortController 以及 AbortSignal 现代 JavaScript 平台中内置的 fetch 工具。
一般来说,Azure SDK for JavaScript 的用户不需要使用该库。 相反,他们使用AbortController并AbortSignal由平台提供,并将中止信号传递给 Azure SDK 操作。
关键链接:
入门
Installation
使用 npm 安装此库,如下所示
npm install @azure/abort-controller
关键概念
使用 AbortController 创建一个 AbortSignal ,然后可以传递给 Azure SDK 操作以取消待处理的工作。
AbortSignal可以通过实例AbortController化的属性访问signal。
AbortSignal也可以直接从静态方法返回,例如 AbortSignal.timeout(100)。
该信号在100毫秒后被取消。
示例
以下示例假设 是一个 doAsyncWork 函数,取一组性质,其中一个是中止信号。
示例1 - 基本用法
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();
示例2 - 带超时的中止
async function doAsyncWork(options: { abortSignal: AbortSignal }): Promise<void> {
if (options.abortSignal.aborted) {
return;
}
// do async work
}
const signal = AbortSignal.timeout(1000);
doAsyncWork({ abortSignal: signal });
后续步骤
可以通过执行 npm run test在本地生成和运行测试。 浏览 test 文件夹以查看公共类的高级用法和行为。
故障排除
如果您在使用该库时遇到问题,请随时file问题。
Contributing
若要参与此库,请阅读 贡献指南 了解有关如何生成和测试代码的详细信息。