Analiz durumunu denetleme

URL, analyze API'si için yapılan bir isteğe yanıt olarak Location üst bilgisinin bir parçası olarak döndürülür. Analiz işinin durumu için HTTP GET üzerinden sorgu yapmak amacıyla kullanılır. Analiz işi tamamlandığında yanıt gövdesi, sonuç çıktısının indirilebileceği URL'yi veya URL listesini içerir. 200 HTTP durum kodu döndürülünceye kadar bu URI'yi çağırmaya devam edin. İş çalışmaya devam ederken analyze öğesinden döndürülen aynı URI'nin bulunduğu Location üst bilgisiyle 202 HTTP durum kodu döndürülür. 200 yanıtı döndürüldüğünde resultFileUris özelliği, zip dosyasında bulunan çıktının tek veya indirilebilir konumlarının listesini içerir. Statik Analiz Sonuçları Değişim Biçimi (SARIF) V2 biçimli dosya, analiz sonuçlarını içeren JSON biçimli bir dosya olan bu zip indirmesine dahil edilir. Yanıt gövdesi, bulunan sorun sayısının özetinin bulunduğu IssueSummary nesnesini içerir.

Not

Durum denetimleri arasında 15 - 60 saniye beklenilmesi önerilir. Analizin çalışması genellikle 1 - 5 dakika sürer.
Bu API, analiz işini başlatan aynı istemci uygulama için bir belirteç olması gereken OAuth belirtecini gerektirir.

Başlıklar

Ad Tür Beklenen değer Gerekli mi?
Yetkilendirme Dize Microsoft Entra Uygulama Kimliği talebi içeren OAuth 1 taşıyıcı belirteci. yes
x-ms-tenant-id GUID Uygulama kiracısının kimliği. evet
x-ms-correlation-id GUID Analizi çalıştırma tanımlayıcısı. Yürütmenin tamamı için aynı kimliği sağlamanız gerekir (yükleme, çözümleme, durum) evet

Beklenen yanıtlar

HTTP durum kodu Senaryo Sonuç
200 Bir veya daha fazla sonuç bulundu Aşağıdaki örneğe bakın. Bir sonuç döndürülür.
202 İşlenmeye devam ediyor Aşağıdaki örneğe bakın. Bir sonuç döndürülür.
403 Yasak İstek sahibi, analiz isteğini oluşturanla aynı değildir.
404 Bulunamadı URL'de sağlanan başvuru ile analiz isteği bulunamıyor.

Beklenen yanıt üst bilgileri

Ad Tür Beklenen değer Gerekli mi?
Konum uri Geçerli durumu sorgulamada ve sonuçları elde etmede kullanılacak URI evet

Beklenen yanıt gövdesi

Aşağıdaki tabloda, her isteğin yanıt yapısı açıklanmaktadır (yalnızca HTTP 200 veya 202 yanıtı).

Özellik Tür Beklenen değer Gerekli mi?
privacyPolicy string Gizlilik ilkesinin URI'si. Evet
ilerleme int Yüzde 0-100 arasında değişen bir değer tamamlandı. Burada 10, işlemenin yaklaşık %10'unun tamamlandığı anlamına gelir. Evet
runCorrelationId GUID Her istekte bulunan istek tanımlayıcısı. Bu, gerekirse istekle ilişkilendirme yapmak için kullanılabilir. Evet
durum string InProgress, iş işlenmeye devam ederken döndürülür. Failed işi sunucuda işlerken yıkıcı bir sorun oluştuğunda döndürülür. Hata özelliğinde daha fazla ayrıntı olmalıdır. Finished, iş sorunsuz bir şekilde başarıyla tamamlandığında döndürülür. FinishedWithErrors iş başarıyla tamamlandığında ancak bir veya daha fazla kural hatasız tamamlanamadığında döndürülür. Bu yalnızca raporun tamamlanamayacağını size bildiren bir sinyaldir. Microsoft, arka uçtaki bu sorunların farkındadır ve bunları tanılayıp çözmek için çalışır. Evet
resultFileUris dizeler dizisi Çıktının doğrudan indirilmesini sağlayan URI'lerin listesi. Özgün analiz API çağrısında bulunan her dosya için bir adet olmalıdır. Hayır. Bu yalnızca işleme tamamlandığında dahil edilir.
issueSummary IssueSummary Aşağıda listelenen özellikler Hayır. Bu yalnızca işleme tamamlandığında dahil edilir.
issueSummary.criticalIssueCount int Sonuçta kritik önem derecesiyle tanımlanan sorunların sayısı Evet
issueSummary.highIssueCount int Sonuçta yüksek önem derecesiyle tanımlanan sorunların sayısı Evet
issueSummary.mediumIssueCount int Sonuçta orta önem derecesiyle tanımlanan sorunların sayısı Evet
issueSummary.lowIssueCount int Sonuçta düşük önem derecesiyle tanımlanan sorunların sayısı Evet
issueSummary.informationalIssueCount int Sonuçta bilgilendirici önem derecesiyle tanımlanan sorunların sayısı Evet

Örnek: tamamlandığında durum denetimi

Bu örnekte, sonuç tamamlandığında bir durum denetimi çağrısı verilir.

İstek

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

Ayrıca bkz.

Power Apps denetleyicisi web API'sini kullanma
Kural kümeleri listesini alma
Kurallar listesini alma
Dosyayı karşıya yükleme
Analiz çağırma