Verificar o estado da análise

É devolvido um URL como parte do cabeçalho Location em resposta a um pedido à API analyze. Deve ser utilizado para consultar via HTTP GET para o estado da tarega de análise. Quando a tarefa de análise for concluída, o corpo da resposta incluirá o URL ou a lista de URLs em que a saída de resultados pode ser transferida. Continue a chamar este URI até ser devolvido um código de estado HTTP de 200. Enquanto a tarefa ainda estiver em execução, será devolvido um código de estado HTTP de 202 com o cabeçalho Location que contém este mesmo URI que foi devolvido de analyze. Quando for devolvida uma resposta de 200, a propriedade resultFileUris incluirá a localização individual ou a lista de localizações transferíveis da saída, que está contida num ficheiro zip. Um ficheiro com o formato Static Analysis Results Interchange Format (SARIF) V2 é incluído nesta transferência de zip que é um ficheiro formatado JSON que contém os resultados da análise. O corpo de resposta conterá um objeto IssueSummary que contém um resumo da contagem de problemas encontrados.

Nota

Recomenda-se que aguarde entre 15 a 60 segundos entre as verificações de estado. Normalmente, a análise demora entre 1 a 5 minutos a ser executada.
Essa API requer um OAuth token que deve ser um token para o mesmo aplicativo cliente que iniciou o trabalho de análise.

Cabeçalhos

Name Type Valor esperado Necessária?
Autorização cadeia O OAuth token de 1 portador com Microsoft Entra reivindicação de ID do aplicativo. yes
x-ms-tenant-id GUID O ID do inquilino para a aplicação. sim
x-ms-correlation-id GUID O identificador para a execução da análise. Deve fornecer o mesmo ID para toda a execução (carregar, analisar, estado) sim

Respostas esperadas

Código de estado HTTP Cenário Resultado
200 Foi encontrado um ou mais resultados Veja o exemplo abaixo. Será devolvido um resultado.
202 Ainda em processamento Veja o exemplo abaixo. Será devolvido um resultado.
403 Proibido O requerente não é o mesmo que o originador do pedido para análise.
404 Não encontrado Não foi possível localizar o pedido de análise com a referência fornecida no URL.

Cabeçalhos de resposta esperados

Nome Tipo Valor esperado Necessária?
Localização uri URI para utilizar na consulta do estado atual e para obter os resultados sim

Corpo de resposta esperado

O seguinte quadro descreve a estrutura da resposta a cada pedido (apenas resposta HTTP 200 ou 202).

Propriedade Tipo Valor esperado Necessária?
privacyPolicy string O URI da política de privacidade. Sim
Progresso número inteiro Um valor que varia entre 0 e 100%, em que 10 significa que o processamento é de aproximadamente 10% completo. Sim
runCorrelationId GUID O identificador do pedido que está incluído em cada pedido. Isto pode ser utilizado para correlacionar com o pedido, se for necessário. Sim
estado string InProgress é devolvido quando o trabalho ainda está a ser processado. Failed é retornado quando houve um problema catastrófico processando o trabalho no servidor. Devem existir mais detalhes na propriedade de erro. Finished é retornado quando o trabalho foi concluído com êxito sem problemas. FinishedWithErrors é retornado quando o trabalho foi concluído com êxito, no entanto, uma ou mais regras não foram concluídas sem erro. Isto é simplesmente um sinal para saber que o relatório poderá não estar concluído. Microsoft está ciente desses problemas no backend e trabalhará para que as coisas sejam diagnosticadas e abordadas. Sim
resultFileUris matriz de cadeias Uma lista de URIs que permite a transferência da saída. Deve existir um por ficheiro que foi incluído na chamada à API de análise original. Não. Isto só está incluído quando o processamento tiver sido concluído.
issueSummary IssueSummary Propriedades listadas abaixo Não. Isto só está incluído quando o processamento tiver sido concluído.
issueSummary.criticalIssueCount número inteiro Contagem de problemas identificados com uma gravidade crítica no resultado Sim
issueSummary.highIssueCount número inteiro Contagem de problemas identificados com uma gravidade elevada no resultado Sim
issueSummary.mediumIssueCount número inteiro Contagem de problemas identificados com uma gravidade média no resultado Sim
issueSummary.lowIssueCount número inteiro Contagem de problemas identificados com uma gravidade baixa no resultado Sim
issueSummary.informationalIssueCount número inteiro Contagem de problemas identificados com uma gravidade informativa no resultado Sim

Exemplo: verificação de estado quando concluído

Este exemplo emite uma chamada de verificação de estado com o resultado a ser concluído.

Solicitar

GET [Geographical URI]/api/status/9E378E56-6F35-41E9-BF8B-C0CC88E2B832&api-version=1.0
Accept: application/json
Content-Type: application/json; charset=utf-8
x-ms-correlation-id: 9E378E56-6F35-41E9-BF8B-C0CC88E2B832
x-ms-tenant-id: F2E60E49-CB87-4C24-8D4F-908813B22506

resposta

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
    "privacyPolicy":"https://go.microsoft.com/fwlink/?LinkID=310140",
    "progress":100,
    "resultFileUris":["https://fakeblob.blob.core.windows.net/report-files/mySolution.zip?sv=2017-11-09&sr=b&sig=xyz&se=2019-06-11T20%3A27%3A59Z&sp=rd"],"runCorrelationId":"9E378E56-6F35-41E9-BF8B-C0CC88E2B832","status":"Finished","issueSummary":
    {
        "informationalIssueCount":0,
        "lowIssueCount":0,
        "mediumIssueCount":302,
        "highIssueCount":30,
        "criticalIssueCount":0
    }
}

Consulte também

Usar a API da Web do Power Apps verificador
Recuperar a lista de conjuntos de regras
Recuperar a lista de regras
Carregar um ficheiro
Invoque a análise