Udostępnij za pośrednictwem


Pobieranie listy reguł

Reguły są grupowane przy użyciu zestawu reguł. Reguła może nie należeć do żadnego zestawu reguł lub należeć do wielu zestawów reguł. Żądanie GET umożliwia uzyskanie listy wszystkich dostępnych reguł, reguł z zestawu reguł lub zestawów reguł, przez wywołanie interfejsu API [Geographical URI]/api/rule. Istnieje kilka różnych metod wywoływania tego interfejsu API, jednak jego najczęstsze użycie to pobieranie listy reguł dla określonego zestawu reguł.

Uwaga

Ten interfejs API wymaga tokenu OAuth.

Nagłówki

Nazwa/nazwisko Type Oczekiwana wartość Wymagane?
Accept-Language ciąg Kod języka (na przykład pl-PL). Wartość domyślna to en-US. nie

Parametry

Nazwa/nazwisko Typ Oczekiwana wartość Wymagane?
ruleset string Nazwa lub identyfikator grupy reguł lub lista identyfikatorów reguł albo nazwy rozdzielone przecinkami lub średnikami (np. „Sprawdzanie rozwiązań”). nie
includeMessageFormats wartość logiczna Po ustawieniu wartości true lista możliwych odmian komunikatów zostanie uwzględniona w wynikach żądań języków, jeśli są dostępne. Ta lista jest przydatna do tłumaczenia wielu języków. Jeśli nie jest to potrzebne, nie podawaj parametru false jako wartości, ponieważ zwiększa on rozmiar odpowiedzi i może zwiększyć czas przetwarzania. nie

Oczekiwane odpowiedzi

Kod stanu HTTP Scenariusz Wynik
200 Znaleziono jeden lub więcej wyników Zobacz przykład w późniejszej części tego artykułu. Może zostać zwrócony co najmniej jeden wynik.
204 Nie znaleziono wyników Brak wyników w treści odpowiedzi.
401 Uwierzytelnianie nie powiodło się Brak wyników w treści odpowiedzi.

Oczekiwana treść odpowiedzi

W poniższej tabeli przedstawiono strukturę odpowiedzi na poszczególne żądania (tylko odpowiedzi HTTP 200).

Właściwość Typ Oczekiwana wartość Wymagane?
code string Identyfikator reguły, nazywany również ID reguły. Tak
Podsumowanie ciąg Podsumowanie reguły. Tak
opis ciąg Bardziej szczegółowy opis reguły. Tak
guidanceUrl Identyfikator URI Adres URL, w którym można znaleźć opublikowane wskazówki. W niektórych przypadkach nie ma dedykowanego artykułu z wytycznymi. Tak
uwzględnij wartość logiczna Informuje usługę, że dana reguła ma zostać uwzględniona w analizie. Ta wartość to true dla tego interfejsu API. Nie
messageTemplates tablica Ta wartość właściwości jest uwzględniana tylko wtedy, gdy includeMessageFormats ma wartość true. Nie
messageTemplates.ruleId string Zwraca wartość identyfikatora taką samą jak właściwość code. Tak
messageTemplates.messageTemplateId string Identyfikator używany w raporcie SARIF (Static Analysis Results Interchange Format) w celu poinformowania o odmianie komunikatu dotyczącego problemu dla reguły. Tak
messageTemplates.messageTemplate string Tekst odmiany komunikatu dla scenariusza problemu, który jest raportowany przez regułę. Ten tekst to ciąg formatu, który może zawierać tokeny, w których można wykorzystać argumenty podane w raporcie SARIF do utworzenia szczegółowego komunikatu. Tak

Przykład: pobieranie reguł dla zestawów reguł w innym języku

W tym przykładzie są zwracane dane wszystkich reguł w zestawie reguł Kontroler rozwiązań w języku francuskim. Jeśli żądany język to angielski, wystarczy usunąć nagłówek Accept-Language.

Żądanie

GET [Geographical URI]/api/rule?ruleset=083A2EF5-7E0E-4754-9D88-9455142DC08B&api-version=2.0
x-ms-correlation-id: 9E378E56-6F35-41E9-BF8B-C0CC88E2B832
Accept: application/json
Content-Type: application/json; charset=utf-8
Accept-Language: fr

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

[
    {
        "description": "Ne pas implémenter d’activités de workflow Microsoft Dynamics CRM 4.0",
        "guidanceUrl": "https://go.microsoft.com/fwlink/?LinkID=398563&error=il-avoid-crm4-wf&client=PAChecker",
        "include": true,
        "code": "il-avoid-crm4-wf",
        "summary": "Ne pas implémenter d’activités de workflow Microsoft Dynamics CRM 4.0",
        "howToFix": {
            "summary": ""
        }
    },
    {
        "description": "Utiliser InvalidPluginExecutionException dans des plug-ins et activités de workflow",
        "guidanceUrl": "https://go.microsoft.com/fwlink/?LinkID=398563&error=il-use-standard-exception&client=PAChecker",
        "include": true,
        "code": "il-use-standard-exception",
        "summary": "Utiliser InvalidPluginExecutionException dans des plug-ins et activités de workflow",
        "howToFix": {
            "summary": ""
        }
    },
...
]

Przykład: pobieranie wszystkich danych

W tym przykładzie są zwracane dane dotyczące wszystkich dostępnych reguł.

Żądanie

GET [Geographical URI]/api/rule?api-version=2.0
Accept: application/json
Content-Type: application/json; charset=utf-8

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

[
    {
        "description": "Retrieve specific columns for an entity via query APIs",
        "guidanceUrl": "https://go.microsoft.com/fwlink/?LinkID=398563&error=il-specify-column&client=PAChecker",
        "include": true,
        "code": "il-specify-column",
        "summary": "Retrieve specific columns for an entity via query APIs",
        "howToFix": {
            "summary": ""
        }
    },
    {
        "description": "Do not duplicate plug-in step registration",
        "guidanceUrl": "https://go.microsoft.com/fwlink/?LinkID=398563&error=meta-remove-dup-reg&client=PAChecker",
        "include": true,
        "code": "meta-remove-dup-reg",
        "summary": "Do not duplicate plug-in step registration",
        "howToFix": {
            "summary": ""
        }
    },
...
]

Przykład: pobieranie dla zestawu reguł z formatami wiadomości

W tym przykładzie są zwracane dane wszystkich reguł w zestawie reguł Kontroler rozwiązań w języku francuskim. Jeśli żądany język to angielski, wystarczy usunąć nagłówek Accept-Language.

Żądanie

GET [Geographical URI]/api/rule?ruleset=083A2EF5-7E0E-4754-9D88-9455142DC08B&includeMessageFormats=true&api-version=2.0
Accept: application/json
Content-Type: application/json; charset=utf-8

Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

[
    {
        "description": "Do not implement Microsoft Dynamics CRM 4.0 workflow activities",
        "guidanceUrl": "https://go.microsoft.com/fwlink/?LinkID=398563&error=il-avoid-crm4-wf&client=PAChecker",
        "include": true,
        "code": "il-avoid-crm4-wf",
        "summary": "Do not implement Microsoft Dynamics CRM 4.0 workflow activities",
        "howToFix": {
            "summary": ""
        },
        "messageTemplates": [
            {
                "ruleId": "il-avoid-crm4-wf",
                "messageTemplateId": "message1",
                "messageTemplate": "Update the {0} class to derive from System.Workflow.Activities.CodeActivity, refactor Execute method implementation, and remove Microsoft.Crm.Workflow.CrmWorkflowActivityAttribute from type"
            },
            {
                "ruleId": "il-avoid-crm4-wf",
                "messageTemplateId": "message2",
                "messageTemplate": "Change the {0} property's type from {1} to {2} Argument <T> type"
            },
            {
                "ruleId": "il-avoid-crm4-wf",
                "messageTemplateId": "message3",
                "messageTemplate": "Replace the Microsoft.Crm.Workflow.Crm{0}Attribute with Microsoft.Xrm.Sdk.Workflow.{0}Attribute"
            },
            {
                "ruleId": "il-avoid-crm4-wf",
                "messageTemplateId": "message4",
                "messageTemplate": "Remove the {0} System.Workflow.ComponentModel.DependencyProperty type field"
            }
        ]
    },
    {
        "description": "Use InvalidPluginExecutionException in plug-ins and workflow activities",
        "guidanceUrl": "https://go.microsoft.com/fwlink/?LinkID=398563&error=il-use-standard-exception&client=PAChecker",
        "include": true,
        "code": "il-use-standard-exception",
        "summary": "Use InvalidPluginExecutionException in plug-ins and workflow activities",
        "howToFix": {
            "summary": ""
        },
        "messageTemplates": [
            {
                "ruleId": "il-use-standard-exception",
                "messageTemplateId": "message1",
                "messageTemplate": "An unguarded throw of type {0} was detected. Refactor this code to either throw an exception of type InvalidPluginExecutionException or guard against thrown exceptions of other types."
            },
            {
                "ruleId": "il-use-standard-exception",
                "messageTemplateId": "message2",
                "messageTemplate": "An unguarded rethrow of type {0} was detected. Refactor this code to either throw an exception of type InvalidPluginExecutionException or guard against thrown exceptions of other types."
            }
        ]
    },
...
]

Zobacz także

Używanie internetowego interfejsu API narzędzia do sprawdzania usługi Power Apps
Pobieranie listy zestawów reguł
Przekazywanie pliku
Wywoływanie analizy
Sprawdzanie stanu analizy