Compartilhar via


Converter um objeto em uma matriz (visualização)

ID do modelo: convertobjecttoarray

Converte um objeto JSON no corpo da solicitação ou resposta em uma matriz. Este modelo está disponível no Power Apps e no Power Automate.

Para começar, especifique o caminho para o objeto ou coleção pai e o subcaminho da propriedade no pai em que a matriz está localizada. Em seguida, especifique um nome de propriedade para a chave de cada objeto filho e um novo nome de propriedade para as propriedades em cada objeto filho. Por fim, especifique o caminho para o qual a nova propriedade do objeto será gravada.

Algumas considerações:

  • Você pode deixar o subPath vazio se o próprio pai for a matriz que você deseja transformar.
  • Para substituir a matriz existente, o caminho seria o caminho pai especificado anteriormente e o subcaminho da propriedade.
  • Para manter a chave do objeto especificado como uma propriedade dentro do novo objeto, defina a opção "Retain key" como "true" (que é o padrão se deixado em branco). Caso contrário, defina a opção como "falso".

Exemplos

Vejamos alguns exemplos que usam os parâmetros a seguir.

Exemplo 1

JSON de entrada:

    {
        "peopleObject":{
            "XYZ":{
                "Age": "30"
            },
            "ABC":{
                "Age": "23"
            }
        }
    }
Parâmetro de Entrada Valor
propertyParentPath@body()
propertySubPathpeopleObject
newPropertyPath@body().peopleArray
Nome da ChaveNome
Nome do ValorDetalhes

JSON de saída:

    {
        "peopleObject":{
            "XYZ":{
                "Age": "30"
            },
            "ABC":{
                "Age": "23"
            }
        },
        "peopleArray":[
            {
               "Name": "XYZ",
               "Details":{
                   "Age": "30"
               }
            },
            {
               "Name": "ABC",
               "Details":{
                   "Age": "23"
               }
            },
        ]
    }

Exemplo 2

JSON de entrada

    {
        "sets":[
            {
                "people":{
                    "XYZ":{
                        "Age": "30"
                    },
                    "ABC":{
                        "Age": "23"
                    }
                }
            },
            {
                "people":{
                    "PQR":{
                        "Age": "32"
                    },
                    "MNO":{
                        "Age": "26"
                    }
                }
            },
        ]
    }
Parâmetro de Entrada Valor
propertyParentPath@body().sets
propertySubPathpeople
newPropertyPath@item().people
keyNameNome
valueNameDetalhes

JSON de saída:

    {
        "sets":[
            {
                "people":[
                    {
                        "Name": "XYZ",
                        "Details":{
                            "Age": "30"
                        }
                    },
                    {
                        "Name": "ABC",
                        "Details":{
                            "Age": "23"
                        }
                    },
                ]
            },
            {
                "people":[
                    {
                        "Name": "PQR",
                        "Details":{
                            "Age": "32"
                        }
                    },
                    {
                        "Name": "MNO",
                        "Details":{
                            "Age": "26"
                        }
                    },
                ]
            }
        ]
    }

Observe que, como o pai sets é uma coleção, a transformação é aplicada a cada subPath people.

Exemplo de conectores de código aberto

Temos uma instância deste modelo sendo usada em nosso repositório de conectores de código aberto .

Conector Cenário
PlanejadorTransforme um objeto de referências em uma matriz de referências na resposta para a ação Obter Detalhes da Tarefa.

Parâmetros de Entrada

Nome Chave Obrigatório Tipo Descrição
Target object or collection path x-ms-apimTemplateParameter.propertyParentPath Verdadeiro Cadeia de Caracteres Caminho para o objeto ou coleção.
Property subpath x-ms-apimTemplateParameter.propertySubPath Cadeia de Caracteres Subcaminho da propriedade no objeto ou coleção.
Path of the new property x-ms-apimTemplateParameter.newPropertyPath Verdadeiro Cadeia de Caracteres Caminho da nova propriedade.
Property name for the key x-ms-apimTemplateParameter.keyName Cadeia de Caracteres Nome da propriedade para a chave.
Property name for the value x-ms-apimTemplateParameter.valueName Cadeia de Caracteres Nome da propriedade para o valor.
Run policy on x-ms-apimTemplate-policySection Verdadeiro Enumeração Especifica quando executar esta política
- Solicitação: o modelo de política será executado antes que a solicitação seja enviada à API de back-end.
- Resposta: a política será executada após o recebimento da resposta da API de back-end.
Operations x-ms-apimTemplate-operationName Matriz Lista de ações e gatilhos aos quais a política se aplicará. Se nenhuma operação for selecionada, esta política será aplicada a todas as operações.