Obter a lista de regras
As regras são agrupadas através de um conjunto de regras. Uma regra pode não estar em nenhum conjunto de regras ou em vários. Utilize um pedido GET
para obter uma lista de todas as regras disponíveis, as regras num conjunto de regras ou conjuntos de regras ao chamar a API [Geographical URI]/api/rule
. Existem algumas variações para chamar esta API, no entanto, o uso mais comum é através da obtenção da lista de regras para um conjunto de regras específico.
Nota
Esta API requer um OAuth token.
Cabeçalhos
Name | Type | Valor esperado | Necessária? |
---|---|---|---|
Accept-Language | cadeia | O código do idioma (por exemplo: en-US). A predefinição é en-US. | Não |
Parâmetros
Nome | Tipo | Valor esperado | Necessária? |
---|---|---|---|
ruleset | string | O nome ou o ID do conjunto de regras ou uma lista de ID de conjuntos de regras, ou nomes separados por uma vírgula ou ponto e vírgula (por exemplo, "Verificador de Soluções"). | Não |
includeMessageFormats | booleano | Quando definido como true , a lista de variações possíveis da mensagem são incluídas nos resultados dos pedidos de idiomas, se disponível. Esta lista é útil para as traduções em vários idiomas. Se não for necessário, não forneça este parâmetro ou forneça false como valor, uma vez que este parâmetro aumenta o tamanho da resposta e poderá aumentar o tempo de processamento. |
Não |
Respostas esperadas
Código de estado HTTP | Cenário | Resultado |
---|---|---|
200 | Foi encontrado um ou mais resultados | Consulte o exemplo adiante neste artigo. Pode ser devolvido um ou mais resultados. |
204 | Não foram encontrados resultados | Não há resultados no corpo da resposta. |
401 | Falha ao Autenticar | Não há resultados no corpo da resposta. |
Corpo de resposta esperado
O seguinte quadro descreve a estrutura da resposta a cada pedido (apenas resposta HTTP 200).
Propriedade | Tipo | Valor esperado | Necessária? |
---|---|---|---|
code | string | O identificador da regra, por vezes denominado como ID da Regra. | Sim |
Resumo | cadeia | Um resumo da regra. | Sim |
descrição | cadeia | Descrição mais detalhada da regra. | Sim |
guidanceUrl | URI | O URL onde encontrar orientação publicada. Em alguns casos, poderá não haver nenhum artigo de orientação de ajuda dedicado. | Sim |
incluir | booleano | Sinaliza ao serviço que a regra deve ser incluída na análise. Este valor é true para esta API. |
Não |
messageTemplates | matriz | Este valor de propriedade é incluído apenas quando includeMessageFormats é true . |
Não |
messageTemplates.ruleId | string | Devolve o mesmo valor de ID que a propriedade code . |
Sim |
messageTemplates.messageTemplateId | string | Um identificador utilizado no relatório Static Analysis Results Interchange Format (SARIF) para sinalizar uma variação da mensagem de problema para a regra. | Sim |
messageTemplates.messageTemplate | string | O texto da variação da mensagem para o cenário de problemas que a regra reporta. Este texto é uma cadeia de formato que pode conter tokens em que os argumentos fornecidos no relatório SARIF podem ser usados para criar uma mensagem detalhada. | Sim |
Exemplo: obter regras para um conjunto de regras noutro idioma
Este exemplo devolve os dados de todas as regras do conjunto de regras Verificador de Soluções no idioma Francês. Se o idioma desejado for inglês, basta remover 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: obter tudo
Este exemplo devolve 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: obter para um conjunto de regras com formatos de mensagem
Este exemplo devolve os dados de todas as regras do conjunto de regras Verificador de Soluções no idioma Francês. Se o idioma desejado for inglês, basta remover 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
Usar a API da Web do Power Apps verificador
Recuperar a lista de conjuntos de regras
Carregar um ficheiro
Invoque a análise
Verificar o estado da análise