Verificarea stării analizei
O adresă URL este returnată ca parte a antetului Location
ca răspuns la o solicitare către API-ul analyze
. Acesta trebuie utilizat pentru interogarea prin HTTP GET
pentru starea operațiunii de analiză. Când s-a terminat operațiunea de analiză, corpul de răspuns va include adresa URL sau o listă de adrese URL în care pot fi descărcate rezultatele produse. Continuați să apelați acest URI până când un cod de stare HTTP de 200 este returnat. În timp ce lucrarea este încă în curs, un cod de stare HTTP de 202 va fi returnat odată cu antetul Location
care conține același URI din care a fost returnat din analyze
. Odată ce un răspuns de 200 este returnat, proprietatea resultFileUris
va include singura locație sau lista locațiilor descărcabile ale producției, care este conținută într-un fișier zip. Un fișier formatat V2 Format de schimb de rezultate al analizei statice (SARIF) este inclus în această descărcare zip care este un fișier formatat JSON
care conține rezultatele analizei. Corpul de răspuns va conține un obiect IssueSummary
care conține un rezumat al numărului de probleme găsite.
Notă
Se recomandă să așteptați între 15 până la 60 de secunde între verificările de stare. Analiza durează de obicei între 1 și 5 minute pentru a fi rulată.
Acest API necesită un simbol OAuth care trebuie să fie un simbol pentru aceeași aplicație client care a inițiat sarcina de analiză.
Anteturi
Nume | Tipul | Valoare așteptată | Obligatoriu? |
---|---|---|---|
Autorizare | string | Indicativul OAuth 1 purtător cu Microsoft Entra revendicarea ID aplicației. | da |
x-ms-tenant-id | GUID | ID-ul entității găzduite pentru aplicație. | da |
x-ms-correlation-id | GUID | Identificatorul pentru rularea analizei. Ar trebui să furnizați același ID pentru întreaga execuție (încărcare, analiză, stare) | da |
Răspunsuri așteptate
Cod de stare HTTP | Scenariu | Rezultat |
---|---|---|
200 | Au fost găsite unul sau mai multe rezultate | Consultați exemplul de mai jos. Un rezultat va fi returnat. |
202 | Încă procesează | Consultați exemplul de mai jos. Un rezultat va fi returnat. |
403 | Interzis | Solicitantul nu este același cu inițiatorul solicitării de analiză. |
404 | Nu a fost găsit | Nu se poate găsi solicitarea de analiză cu referința furnizată în adresa URL. |
Anteturile cu răspunsuri așteptate
Nume | Tip | Valoare așteptată | Obligatoriu? |
---|---|---|---|
Locație | uri | URI de utilizat la interogarea pentru starea curentă și pentru a obține rezultatele | da |
Corp de răspuns așteptat
Următorul tabel prezintă structura răspunsului pentru fiecare cerere (doar răspuns HTTP 200 sau 202).
Proprietate | Tip | Valoare așteptată | Obligatoriu? |
---|---|---|---|
privacyPolicy | string | URI al politicii de confidențialitate. | Da |
Progres | int | O valoare cuprinsă între 0-100 procente complete, unde 10 înseamnă că procesarea este aproximativ 10% realizată. | Da |
runCorrelationId | GUID | Identificatorul de solicitare inclus în fiecare solicitare. Aceasta poate fi utilizată pentru a se corela cu solicitarea, dacă este necesar. | Da |
stare | string | InProgress este returnat când lucrarea este încă în curs de procesare. Failed este returnat când a apărut o problemă catastrofală la procesarea jobului pe server. Ar trebui să existe mai multe detalii în proprietatea de eroare. Finished este returnat când lucrarea s-a finalizat cu succes fără probleme. FinishedWithErrors este returnat când jobul s-a finalizat cu succes, cu toate acestea, una sau mai multe reguli nu s-au finalizat fără eroare. Acesta este doar un semnal pentru a ști că raportul este posibil să nu fie complet. Microsoft este conștient de aceste probleme în backend și va lucra pentru ca lucrurile să fie diagnosticate și rezolvate. |
Da |
resultFileUris | șir de șiruri | O listă de URI care permit descărcarea directă a rezultatului. Ar trebui să existe unul pentru fiecare fișier care a fost inclus în apelul API original de analiză. | Nu. Aceasta este inclusă numai atunci când procesarea s-a finalizat. |
issueSummary | IssueSummary | Proprietăți enumerate mai jos | Nu. Aceasta este inclusă numai atunci când procesarea s-a finalizat. |
issueSummary.criticalIssueCount | int | Numărul de probleme identificate având o severitate critică în rezultat | Da |
issueSummary.highIssueCount | int | Numărul de probleme identificate având o severitate ridicată în rezultat | Da |
issueSummary.mediumIssueCount | int | Numărul de probleme identificate având o severitate medie în rezultat | Da |
issueSummary.lowIssueCount | int | Numărul de probleme identificate având o severitate scăzută în rezultat | Da |
issueSummary.informationalIssueCount | int | Numărul de probleme identificate având o severitate informațională în rezultat | Da |
Exemplu: verificarea stării la final
Acest exemplu emite un apel de verificare a stării, iar rezultatul este finalizat.
Cerere
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
răspuns
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
}
}
Consultați și
Utilizați Power Apps API-ul web Checker
Preluați lista de seturi de reguli
Preluați lista de reguli
Încărcați un fișier
Invocă analiza