Delen via


De lijst met regels ophalen

Regels worden gegroepeerd met behulp van een regelset. Een regel kan zich in geen regelset of meerdere regelsets bevinden. Gebruik een GET-aanvraag om een lijst met alle beschikbare regels, regels in een regelset of regelsets te verkrijgen door de API [Geographical URI]/api/rule aan te roepen. Er zijn een paar varianten voor het aanroepen van deze API, maar het meest voorkomende gebruik is het ophalen van de lijst met regels voor een specifieke regelset.

Notitie

Voor deze API is een OAuth token vereist.

Headers

Meting Type Verwachte waarde Vereist?
Accept-Language string De taalcode (bijvoorbeeld en-US). De standaardinstelling is en-US. nee

Parameters

Meting Type Verwachte waarde Vereist?
ruleset string De naam of id van de regelset of een lijst met regelset-id's of -namen gescheiden door een komma of puntkomma (bijvoorbeeld Oplossingscontrole). nee
includeMessageFormats bool Indien ingesteld op true, wordt de lijst met mogelijke berichtvarianten opgenomen in de resultaten van de taalaanvragen, indien beschikbaar. Deze lijst is handig voor vertalingen in meerdere talen. Geef deze parameter niet op als het niet nodig is of geef false op als de waarde, aangezien deze parameter de omvang van de respons vergroot en de verwerkingstijd kan verlengen. nee

Verwachte responsen

HTTP-statuscode Scenario Result
200 Er zijn een of meer resultaten gevonden Zie het voorbeeld verderop in dit artikel. Mogelijk worden een of meer resultaten geretourneerd.
204 Er zijn geen resultaten gevonden Geen resultaten in de responstekst.
401 Verificatie mislukt Geen resultaten in de responstekst.

Verwachte responstekst

De volgende tabel geeft de structuur van de respons voor elke aanvraag weer (alleen HTTP 200-respons).

Eigenschap Type Verwachte waarde Vereist?
code string De id van de regel, ook wel regel-id genoemd. Ja
summary string Een samenvatting van de regel. Ja
description string Meer gedetailleerde beschrijving van de regel. Ja
guidanceUrl URI De URL waarin de gepubliceerde richtlijn te vinden is. In sommige gevallen is er geen specifiek ondersteunend begeleidingsartikel. Ja
opnemen boolean Geeft aan de service aan dat de regel in de analyse moet worden opgenomen. Deze waarde is true voor deze API. Nee
messageTemplates matrix Deze eigenschapswaarde wordt alleen opgenomen wanneer includeMessageFormats is ingesteld op true. Nee
messageTemplates.ruleId string Retourneert dezelfde id-waarde als de eigenschap code. Ja
messageTemplates.messageTemplateId string Een id die wordt gebruikt in het SARIF-rapport (Static Analysis Results Interchange Format) om een probleemberichtvariatie voor de regel aan te geven. Ja
messageTemplates.messageTemplate string De tekst van de berichtvariatie voor het probleemscenario dat de regel meldt. Deze tekst is een notatiereeks die tokens kan bevatten waarin argumenten in het SARIF-rapport kunnen worden gebruikt om een gedetailleerd bericht samen te stellen. Ja

Voorbeeld: regels voor een regelset in een andere taal ophalen

Dit voorbeeld retourneert gegevens voor alle regels in de regelset Oplossingscontrole in de Franse taal. Als de gewenste taal Engels is, verwijdert u gewoon de Accept-Language-koptekst.

Verzoek

GET [Geographical URI]/api/rule?ruleset=083A2EF5-7E0E-4754-9D88-9455142DC08B&api-version=2.0
x-ms-correlation-id: aaaa0000-bb11-2222-33cc-444444dddddd
Accept: application/json
Content-Type: application/json; charset=utf-8
Accept-Language: fr

respons

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": ""
        }
    },
...
]

Voorbeeld: alle ophalen

Dit voorbeeld retourneert gegevens voor alle beschikbare regels.

Verzoek

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

respons

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": ""
        }
    },
...
]

Voorbeeld: ophalen voor een regelset met berichtindelingen

Dit voorbeeld retourneert gegevens voor alle regels in de regelset Oplossingscontrole in de Franse taal. Als de gewenste taal Engels is, verwijdert u gewoon de Accept-Language-koptekst.

Verzoek

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

respons

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."
            }
        ]
    },
...
]

Zie ook

gebruik de Power Apps checker web-API
Haal de lijst met regels op
Upload een bestand
Analyse aanroepen
Controleer de analysestatus