Compartilhar via


Recuperar a lista de regras

As regras são agrupadas usando um conjunto de regras. Uma regra pode estar em nenhum conjunto de regras ou em vários conjuntos de regras. Use uma solicitação GET para obter uma lista de todas as regras disponíveis, as regras em um conjunto de regras, ou conjuntos de regras chamando a API, [Geographical URI]/api/rule. Existem algumas variações para chamar essa API, no entanto, o uso mais comum é recuperar a lista de regras para um conjunto de regras específico.

Observação

Esta API requer um OAuth token.

Cabeçalhos

Name Type Valor esperado Obrigatório?
Accept-Language cadeia O código do idioma (por exemplo, pt-BR). O padrão é en-US. não

Parâmetros

Name Type Valor esperado Obrigatório?
ruleset string O nome ou o ID do conjunto de regras ou uma lista de IDs do conjunto de regras ou nomes separados por vírgula ou ponto-e-vírgula (por exemplo, "Verificador da Solução"). não
includeMessageFormats bool Quando definido como true, a lista de possíveis variações de mensagens é incluída nos resultados das solicitações de idiomas, se disponíveis. Esta lista é útil para traduções em vários idiomas. Se não for necessário, não forneça esse parâmetro ou forneça false como o valor desse parâmetro aumentará o tamanho da resposta e pode aumentar o tempo de processamento. não

Respostas esperadas

Código de status de HTTP Cenário Result
200 Foram encontrados um ou mais resultados Consulte o exemplo posteriormente neste artigo. Um ou mais resultados podem ser retornados.
204 Nenhum resultado encontrado Nenhum resultado no corpo da resposta.
401 Falha na Autenticação Nenhum resultado no corpo da resposta.

Corpo de resposta esperada

A tabela a seguir descreve a estrutura da resposta para cada solicitação (apenas resposta HTTP 200).

Propriedade Digitar Valor esperado Obrigatório?
código string O identificador da regra, às vezes chamado de ID da Regra. Sim
resumo cadeia Um resumo da regra. Sim
description cadeia Descrição mais detalhada da regra. Sim
guidanceUrl URI A URL na qual encontrar orientações publicadas. Pode haver alguns casos em que não há um artigo de orientação de suporte dedicado. Sim
incluir boolean Sinaliza para o serviço no qual a regra deve ser incluída na análise. Esse valor é true para esta API. Não
messageTemplates matriz Este valor da propriedade é incluído apenas quando includeMessageFormats for true. Não
messageTemplates.ruleId string Retorna o mesmo valor do ID como a propriedade code. Sim
messageTemplates.messageTemplateId string Um identificador usado no relatório SARIF (Static Analysis Results Interchange Format) para sinalizar uma variação de mensagem de problema para a regra. Sim
messageTemplates.messageTemplate string O texto da variação da mensagem para o cenário de problema relatado pela regra. Este texto é uma sequência de formatos que pode conter tokens nos quais os argumentos fornecidos no relatório SARIF podem ser usados para construir uma mensagem detalhada. Sim

Exemplo: recuperar regras para um conjunto de regras em outro idioma

Este exemplo retorna dados para todas as regras no conjunto de regras do Verificador de Solução no idioma francês. Se o idioma desejado for o inglês, remova o cabeçalho Accept-Language.

Solicitar

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

resposta

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

Exemplo: recuperar todos os conjuntos de regras

Este exemplo retorna dados para todas as regras disponíveis.

Solicitar

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

resposta

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

Exemplo: recuperar para um conjunto de regras com formatos de mensagem

Este exemplo retorna dados para todas as regras no conjunto de regras do Verificador de Solução no idioma francês. Se o idioma desejado for o inglês, remova o cabeçalho Accept-Language.

Solicitar

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

resposta

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

Consulte também

Use a API da web do verificador Power Apps
Recuperar a lista de conjuntos de regras
Carregar um arquivo
Invocar análise
Verifique o status da análise