Kontrola stavu analýzy
Adresa URL je vrácena jako součást záhlaví Location
jako odpověď na žádost rozhraní API analyze
. Používá se k dotazování přes HTTP GET
pro stav úlohy analýzy. Po dokončení úlohy analýzy bude text odpovědi obsahovat adresu URL nebo seznam adres URL, ze kterých lze stáhnout výstup výsledků. Volejte toto URI, dokud nebude vrácen stavový kód HTTP 200. Když je úloha stále spuštěna, bude vrácen stavový kód HTTP 202 se záhlavím Location
obsahujícím stejný identifikátor URI, který byl vrácen z analyze
. Jakmile je vrácena odpověď 200, vlastnost resultFileUris
bude zahrnovat jedno stahovatelné umístění výstupu nebo jejich seznam v souboru .zip. Formátovaný soubor typu SARIF (formát výměny výsledků statické analýzy) V2 je součástí tohoto stahovatelného souboru .zip, což je formátovaný soubor JSON
obsahující výsledky analýzy. Text odpovědi bude obsahovat objekt IssueSummary
, který obsahuje shrnutí počtu nalezených problémů.
Poznámka:
Mezi kontrolami stavu se doporučuje počkat 15 až 60 sekund. Analýza obvykle trvá 1 až 5 minut.
Toto rozhraní API vyžaduje token OAuth, který musí být tokenem pro stejnou klientskou aplikaci, která zahájila úlohu analýzy.
Záhlaví
Název | Typ | Očekávaná hodnota | Povinné? |
---|---|---|---|
Autorizace | string | Nosný token OAuth 1 s deklarací identity ID aplikace Microsoft Entra. | yes |
x-ms-tenant-id | Identifikátor GUID | ID klienta aplikace. | ano |
x-ms-correlation-id | GUID | Identifikátor pro běh analýzy. Měli byste zadat stejné ID pro celý průběh spuštění (nahrání, analýza, stav) | ano |
Očekávané odpovědi
Kód stavu HTTP | Scénář | Výsledek |
---|---|---|
200 | Byl nalezen jeden nebo více výsledků | Viz příklad níže. Bude vrácen jeden výsledek. |
202 | Stále probíhá zpracování | Viz příklad níže. Bude vrácen jeden výsledek. |
403 | Zakázáno | Žadatel není stejný jako původce žádosti o analýzu. |
404 | Nenalezeno | Nelze najít žádost o analýzu s odkazem uvedeným v adrese URL. |
Očekávaná záhlaví odezvy
Název | Typ | Očekávaná hodnota | Povinné? |
---|---|---|---|
Umístění | uri | Identifikátor URI, který se použije při dotazování na aktuální stav a k získání výsledků | ano |
Očekávaný text odpovědi
V následující tabulce je nastíněna struktura odpovědi pro každý požadavek (pouze odpověď HTTP 200 nebo 202).
Vlastnost | Typ | Očekávaná hodnota | Povinné? |
---|---|---|---|
privacyPolicy | string | Identifikátor URI pro zásady ochrany osobních údajů. | Ano |
Průběh | int | Hodnota procentu dokončení v rozsahu od 0 do 100 , kde 10 znamená, že zpracování je přibližně z 10 % dokončeno. | Ano |
runCorrelationId | GUID | Identifikátor požadavku, který je součástí každé žádosti. Ten lze v případě potřeby použít pro korelaci s požadavkem. | Ano |
stav | string | InProgress je vráceno, když se úloha stále zpracovává. Failed je vráceno, když při zpracování úlohy na serveru došlo ke katastrofickému problému. Ve vlastnosti error by měly být další podrobnosti. Finished je vráceno, když byla úloha úspěšně dokončena bez problémů. FinishedWithErrors je vráceno, když byla úloha úspěšně dokončena, ale jedno nebo více pravidel se nepodařilo dokončit bez chyby. Je to čistě signál pro vás, abyste věděli, že zpráva nemusí být úplná. Společnost Microsoft si je těchto problémů back-endu vědoma a bude se snažit, aby byly věci diagnostikovány a řešeny. |
Ano |
resultFileUris | pole řetězců | Seznam identifikátorů URI, které umožňují přímé stažení výstupu. Ke každému souboru by měl být jeden identifikátor, který byl součástí původního volání rozhraní API analýzy. | Ne. Tohle je zahrnuto pouze po dokončení zpracování. |
issueSummary | IssueSummary | Vlastnosti uvedené níže | Ne. Tohle je zahrnuto pouze po dokončení zpracování. |
issueSummary.criticalIssueCount | int | Počet identifikovaných problémů, které mají ve výsledku kritickou závažnost | Ano |
issueSummary.highIssueCount | int | Počet identifikovaných problémů, které mají ve výsledku vysokou závažnost | Ano |
issueSummary.mediumIssueCount | int | Počet identifikovaných problémů, které mají ve výsledku střední závažnost | Ano |
issueSummary.lowIssueCount | int | Počet identifikovaných problémů, které mají ve výsledku nízkou závažnost | Ano |
issueSummary.informationalIssueCount | int | Počet identifikovaných problémů, které mají ve výsledku informační závažnost | Ano |
Příklad: kontrola stavu po dokončení
Tento příklad vydává volání kontroly stavu, jehož výsledkem je dokončení.
Žádost
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
}
}
Viz také
Použití webového rozhraní API kontroly Power Apps
Načtení seznamu sad pravidel
Načtení seznamu pravidel
Odeslání souboru
Vyvolání analýzy