在AppSync的resolver中设置合适的返回类型,并在AuroraDB数据库中确认属性值的存在。
以下代码示例演示了如何在AppSync resolver中设置返回类型并检查属性值:
{
"version": "2017-02-28",
"statements": [
{
"Action": [
"rds-data:ExecuteStatement"
],
"Effect": "Allow",
"Resource": "arn:aws:rds-data:us-west-2:123456789012:cluster:my-cluster",
"Condition": {
"ForAllValues:StringEquals": {
"aws:CalledVia": [
"rds-data.amazonaws.com"
]
}
}
}
]
}
type Query {
getItem(id: ID!): Item
}
type Item {
id: ID!
name: String!
description: String!
}
resolver function:
{
"version": "2017-02-28",
"operation": "Invoke",
"payload": {
"sql": "SELECT * FROM items WHERE id = :id",
"database": "mydb",
"parameterSets": [
{
"id": "$ctx.args.id"
}
]
},
"resultSelector": "$.resultSets[0][0]"
}
在这个示例中,resolver中指定了返回的类型为Item。在AuroraDB的查询中,确保将所有属性查询出来,并且没有空值。
通过这种方式,就可以确保从AuroraDB数据库中返回的属性值不为空。