Verificare lo stato dell'analisi

Viene restituito un URL come parte dell'intestazione Location in risposta a una richiesta all'API analyze. Deve essere utilizzato per eseguire la query tramite HTTP GET per lo stato del processo di analisi. Al termine del processo di analisi, il corpo della risposta includerà l'URL o l'elenco degli URL in cui è possibile scaricare l'output dei risultati. Continua a chiamare questo URI fino a quando non viene restituito un codice di stato HTTP di 200. Mentre il processo è ancora in esecuzione, verrà restituito un codice di stato HTTP 202 con l'intestazione Location contenente lo stesso URI restituito da analyze. Una volta restituita una risposta 200, la proprietà resultFileUris includerà la singola posizione o l'elenco delle posizioni scaricabili dell'output, che è contenuto in un file zip. Il file formattato Static Analysis Results Interchange Format (SARIF) V2 è incluso in questo zip di download che è un file JSON formattato contenente i risultati dell'analisi. Il corpo della risposta conterrà un oggetto IssueSummary che contiene un riepilogo del conteggio dei problemi rilevati.

Nota

Ti consigliamo di attendere da 15 a 60 secondi tra i controlli di stato. L'analisi richiede in genere da 1 a 5 minuti per l'esecuzione.
Questa API richiede un token OAuth che deve essere un token per la stessa applicazione client che ha avviato il processo di analisi.

Intestazioni

Nome Tipo Valore previsto Obbligatorio?
Autorizzazione string Token di connessione OAuth 1 con attestazione ID applicazione Microsoft Entra. yes
x-ms-tenant-id GUID L'ID del tenant per l'applicazione.
x-ms-correlation-id GUID L'identificatore per l'esecuzione dell'analisi. Devi fornire lo stesso ID per l'intera esecuzione (caricamento, analisi, stato)

Risposte previste

Codice di stato HTTP Scenario Risultato
200 Sono stati trovati uno o più risultati Vedi l'esempio seguente. Verrà restituito un risultato.
202 Ancora in elaborazione Vedi l'esempio seguente. Verrà restituito un risultato.
403 Non consentito Il richiedente non è uguale all'autore della richiesta di analisi.
404 Non trovato Impossibile trovare la richiesta di analisi con il riferimento fornito nell'URL.

Intestazioni di risposte previste

Nome Tipo Valore previsto Obbligatorio?
Titolo uri URI da utilizzare nelle query per lo stato corrente e per ottenere i risultati

Corpo della risposta prevista

La tabella seguente delinea la struttura della risposta per ogni richiesta (solo risposta HTTP 200 o 202).

Proprietà Tipo Valore previsto Obbligatorio?
privacyPolicy string L'URI dell'informativa sulla privacy.
Avanzamento int Un valore compreso tra 0 e 100 percento, dove 10 indica che l'elaborazione è completata per circa il 10%.
runCorrelationId GUID Identificatore della richiesta incluso in ciascuna richiesta. Può essere usato per correlare la richiesta, se necessario.
stato string InProgress viene restituito quando il processo è ancora in elaborazione. Failed viene restituito quando si è verificato un problema catastrofico durante l'elaborazione del processo sul server. Dovrebbero esserci più dettagli nella proprietà dell'errore. Finished viene restituito quando il processo è stato completato correttamente senza problemi. FinishedWithErrors viene restituito quando il processo è stato completato correttamente, tuttavia, una o più regole non sono state completate senza errori. Questo è puramente un segnale per farti sapere che il report potrebbe non essere completo. Microsoft è a conoscenza di questi problemi nel backend e lavorerà per diagnosticare e risolvere le situazioni.
resultFileUris matrice di stringhe Elenco di URI che consentono il download diretto dell'output. Dovrebbe essercene uno per file incluso nella chiamata API di analisi originale. No. Questo è incluso solo quando l'elaborazione è stata completata.
issueSummary IssueSummary Proprietà elencate di seguito No. Questo è incluso solo quando l'elaborazione è stata completata.
issueSummary.criticalIssueCount int Numero di problemi identificati con una gravità critica nel risultato
issueSummary.highIssueCount int Numero di problemi identificati con una gravità alta nel risultato
issueSummary.mediumIssueCount int Numero di problemi identificati con una gravità media nel risultato
issueSummary.lowIssueCount int Numero di problemi identificati con una gravità bassa nel risultato
issueSummary.informationalIssueCount int Numero di problemi identificati con una gravità informativa nel risultato

Esempio: controllo dello stato al termine

In questo esempio viene emessa una chiamata di controllo dello stato con il risultato che è un completamento.

Richiesta

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

Response

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
    }
}

Vedi anche

Utilizzare l'API Web verifica Power Apps
Recuperare l'elenco di set di regole
Recuperare l'elenco di regole
Caricare un file
Richiamare l'analisi