AppSync query resolvedor: expressionNames e expressionValues são necessários?
documento @AppSync diz queexpressionNames
eexpressionValues
são campos opcionais, mas sempre são preenchidos por geração de código. Primeira pergunta, eles devem ser incluídos como uma prática recomendada ao trabalhar com o DynamoDB? Se sim, por quê?
AppSync resolvedor para uma consulta na chave de partição:
{
"version": "2017-02-28",
"operation": "Query",
"query": {
"expression": "#partitionKey = :partitionKey",
"expressionNames": {
"#partitionKey": "partitionKey"
},
"expressionValues": {
":partitionKey": {
"S": "${ctx.args.partitionKey}"
}
}
}
}
egunda questão, o que exatamente é a tradução leiga doexpression
campo aqui no código acima? O que exatamente essa declaração está dizendo ao DynamoDB para fazer? Qual é o uso do#
em"expression": "#partitionKey = :partitionKey"
e os nomes e valores da expressão estão apenas formatando salvaguardas?