Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Esta é a implementação padrão de operações de longa execução nas bibliotecas de cliente JavaScript do SDK do Azure que funcionam no navegador e no NodeJS. Esta biblioteca destina-se principalmente a ser usada em código gerado pelo emissor TypeSpec@azure-tools/typespec-ts .
@azure/core-lro segue as Diretrizes de Design do SDK do Azure para Operações de Longa Execução
Ligações principais:
- Código fonte
- Pacote (npm)
- de documentação de referência da API
- Amostras
Primeiros passos
Ambientes atualmente suportados
- Versões LTS do Node.js
- Versões mais recentes do Safari, Chrome, Edge e Firefox.
Instalação
Este pacote é usado principalmente no código gerado e não se destina a ser consumido diretamente pelos usuários finais.
Conceitos-chave
PollerLike
Um poller é um objeto que pode sondar a operação de longa execução no servidor para seu estado até que ele atinja um estado terminal. Também se estende Promise<TResult>, por isso podes await usar diretamente para obter o resultado final. Prevê o seguinte:
-
operationState: uma propriedade que devolve o estado atual da operação, tipada como um tipo que estendeOperationState. Éundefinedse o sondador ainda não tiver sido submetido. -
result: uma propriedade que devolve o resultado da operação quando esta se completa eundefinedcaso contrário -
isDone: uma propriedade que devolve se a operação está num estado terminal -
onProgress: registra funções de retorno de chamada a serem chamadas sempre que uma resposta de sondagem é recebida -
poll: envia um único pedido de sondagem -
pollUntilDone: retorna uma promessa que será resolvida com o resultado da operação -
serialize: devolve uma promessa que resolve para uma representação serializada do estado do sondador -
submitted: devolve uma promessa que se resolve quando o poller foi submetido com sucesso
OperationState
Um tipo para o estado da operação. Ele contém um status campo com os seguintes valores possíveis: notStarted, running, succeeded, failede canceled. Pode ser acedido da seguinte forma:
switch (poller.operationState?.status) {
case "succeeded": // return poller.result;
case "failed": // throw poller.operationState?.error;
case "canceled": // throw new Error("Operation was canceled");
case "running": // ...
case "notStarted": // ...
}
createHttpPoller
Uma função que retorna um objeto do tipo PollerLike. Este poller comporta-se da seguinte forma na presença de erros:
- chama para
pollepollUntilDonelançará um erro caso a operação tenha falhado ou sido cancelada, a menos que aresolveOnUnsuccessfulopção tenha sido definida como true. -
poller.operationState?.statusserá definido para"failed"ou"canceled"quando a operação falhar ou devolver uma resposta de erro.
Exemplos
Exemplos podem ser encontrados na pasta samples.
Solução de problemas
Registo
Os logs podem ser adicionados a critério da biblioteca que implementa o poller de Operação de Longa Execução. Os pacotes dentro do azure-sdk-for-js usam @azure/logger.
Próximos passos
Por favor, dê uma olhada no exemplos diretório para obter exemplos detalhados sobre como usar esta biblioteca.
Contribuição
Se você quiser contribuir para esta biblioteca, leia o guia de contribuição para saber mais sobre como criar e testar o código.
Testes
Para executar nossos testes, primeiro instale as dependências (com pnpm install) e, em seguida, execute os testes de unidade com: pnpm run test:node.
Código de Conduta
Este projeto adotou o Microsoft Open Source Code of Conduct.
Para obter mais informações, consulte o de perguntas frequentes sobre o Código de Conduta
Azure SDK for JavaScript