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 che deve essere un token per la stessa applicazione client che ha avviato il processo di analisi. OAuth
Intestazioni
Name | Type | Valore previsto | Obbligatorio? |
---|---|---|---|
Autorizzazione | string | Il token OAuth 1 portatore con Microsoft Entra rivendicazione ID applicazione. | yes |
x-ms-tenant-id | GUID | L'ID del tenant per l'applicazione. | sì |
x-ms-correlation-id | GUID | L'identificatore per l'esecuzione dell'analisi. Devi fornire lo stesso ID per l'intera esecuzione (caricamento, analisi, stato) | sì |
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 | sì |
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. | Sì |
Avanzamento | int | Un valore compreso tra 0 e 100 percento, dove 10 indica che l'elaborazione è completata per circa il 10%. | Sì |
runCorrelationId | GUID | Identificatore della richiesta incluso in ciascuna richiesta. Può essere usato per correlare la richiesta, se necessario. | Sì |
stato | string | InProgress viene restituito quando il lavoro è ancora in fase di 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 lavoro è stato completato correttamente senza problemi. FinishedWithErrors viene restituito quando il lavoro è 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 diagnosticarli e risolverli. |
Sì |
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 | Sì |
issueSummary.highIssueCount | int | Numero di problemi identificati con una gravità alta nel risultato | Sì |
issueSummary.mediumIssueCount | int | Numero di problemi identificati con una gravità media nel risultato | Sì |
issueSummary.lowIssueCount | int | Numero di problemi identificati con una gravità bassa nel risultato | Sì |
issueSummary.informationalIssueCount | int | Numero di problemi identificati con una gravità informativa nel risultato | Sì |
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/aaaa0000-bb11-2222-33cc-444444dddddd&api-version=1.0
Accept: application/json
Content-Type: application/json; charset=utf-8
x-ms-correlation-id: aaaa0000-bb11-2222-33cc-444444dddddd
x-ms-tenant-id: aaaabbbb-0000-cccc-1111-dddd2222eeee
risposta
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":"aaaa0000-bb11-2222-33cc-444444dddddd","status":"Finished","issueSummary":
{
"informationalIssueCount":0,
"lowIssueCount":0,
"mediumIssueCount":302,
"highIssueCount":30,
"criticalIssueCount":0
}
}
Vedi anche
Utilizzare l'API Web di controllo Power Apps
Recupera l'elenco dei set di regole
Recupera l'elenco delle regole
Carica un file
Invoca analisi