你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

适用于 JavaScript 的 Azure Core LRO 客户端库 - 版本 3.2.0

这是 Azure SDK JavaScript 客户端库中长时间运行的作的默认实现,可在浏览器和 NodeJS 中运行。 此库主要用于由 AutoRestautorest.typescript生成的代码。

@azure/core-lro 遵循 适用于长时间运行的作的 Azure SDK 设计准则

关键链接:

入门指南

当前支持的环境

安装

此包主要用于生成的代码中,不应由最终用户直接使用。

关键概念

SimplePollerLike

轮询器是一个对象,可以在服务器上轮询长时间运行的作的状态,直到它达到终端状态。 它提供以下方法:

  • getOperationState:返回作的状态,类型为扩展的类型 OperationState
  • getResult:返回作完成时的结果, undefined 否则返回该作的结果
  • isDone:返回作是否处于终端状态
  • isStopped:返回轮询是否已停止
  • onProgress:注册每次收到轮询响应时要调用的回调函数
  • poll:发送单个轮询请求
  • pollUntilDone:返回一个承诺,该承诺将与作结果一起解决
  • stopPolling:停止轮询;
  • toString:序列化轮询程序的状态

OperationState

作状态的类型。 它包含status具有以下可能值的字段:notStarted、、runningsucceededfailedcanceled。 可按如下方式访问它:

switch (poller.operationState.status) {
  case "succeeded": // return poller.getResult();
  case "failed": // throw poller.getOperationState().error;
  case "canceled": // throw new Error("Operation was canceled");
  case "running": // ...
  case "notStarted": // ...
}

createHttpPoller

一个返回类型的 SimplePollerLike对象的函数。 此轮询器在出现错误时的行为如下:

  • poll调用并pollUntilDone引发错误,以防作失败或取消,除非resolveOnUnsuccessful选项设置为 true。
  • poller.getOperationState().status 当作失败或返回错误响应时,将设置为 true。

例子

可以在 samples 文件夹中找到示例。

故障排除

伐木业

可以根据实现长时间运行作轮询程序库的任意权限添加日志。 azure-sdk-for-js 中的包使用 @azure/logger

后续步骤

有关如何使用此库的详细示例,请查看 示例 目录。

贡献

若要参与此库,请阅读 贡献指南 了解有关如何生成和测试代码的详细信息。

正在测试

若要运行测试,请先安装依赖项(带 npm installrush install),然后使用: npm run unit-test运行单元测试。

行为准则

该项目已采用 Microsoft开源行为准则。 有关详细信息,请参阅 行为准则常见问题解答 或与 opencode@microsoft.com 联系,了解任何其他问题或意见。