Projeções - AWS AppSync GraphQL

Projeções

Ao ler objetos no DynamoDB usando as operações GetItem, Scan, Query, BatchGetItem e TransactGetItems, você pode, opcionalmente, especificar uma projeção que identifique os atributos desejados. A propriedade da projeção tem a seguinte estrutura, que é semelhante aos filtros:

type DynamoDBExpression = { expression: string; expressionNames?: { [key: string]: string} };

Os campos são definidos da seguinte forma:

expression

A expressão de projeção, que é uma string. Para recuperar um único atributo, especifique o seu nome. Para vários atributos, os nomes devem ser valores separados por vírgulas. Para obter mais informações sobre como escrever expressões de projeção, consulte a documentação das expressões de projeção do DynamoDB. Este campo é obrigatório.

expressionNames

As substituições para espaços reservados de nome do atributo da expressão, na forma de pares chave-valor. A chave corresponde a um espaço reservado de nome usado na expression. O valor deve ser uma string que corresponde ao nome de atributo do item no DynamoDB. Esse campo é opcional e deve ser preenchido apenas por substituições para espaços reservados de nome do atributo da expressão usados em expression. Para obter mais informações sobre expressionNames, consulte a documentação do DynamoDB.

Exemplo 1

O exemplo a seguir é uma seção de projeção para uma função JavaScript em que somente os atributos author e id são retornados do DynamoDB:

projection : { expression : "#author, id", expressionNames : { "#author" : "author" } }
dica

Você pode acessar seu conjunto de seleção de solicitações do GraphQL usando selectionSetList. Esse campo permite que você ajuste sua expressão de projeção dinamicamente de acordo com seus requisitos.

nota

Ao usar expressões de projeção com as operações Scan e Query, o valor de select deve ser SPECIFIC_ATTRIBUTES. Para obter mais informações, consulte a documentação do DynamoDB.