如果您将架构设置如下:
type ConfigValues {
SHOW_CUSTOM_SUBSCRIPTION: String!
SHOW_DD_SUBSCRIPTION: String!
SHOW_GRADIENT_SUBSCRIPTION: String!
SHOW_SOLID_SUBSCRIPTION: String!
}
type Query {
getConfigValues(configName: String!): ConfigValues
}
schema {
query: Query
}
在getConfigValues 上使用解析器,请求映射模板为:
{
"version": "2017-02-28",
"operation": "GetItem",
"key": {
"config_name": $util.dynamodb.toDynamoDBJson($ctx.args.configName),
}
}
还有一个响应映射模板:
$util.toJson($ctx.result.config_value)
执行以下查询:
query {
getConfigValues(configName: "COLOR_PALETTE") {
SHOW_CUSTOM_SUBSCRIPTION
SHOW_DD_SUBSCRIPTION
SHOW_GRADIENT_SUBSCRIPTION
SHOW_SOLID_SUBSCRIPTION
}
}
会有以下反应:
{
"data": {
"getConfigValues": {
"SHOW_CUSTOM_SUBSCRIPTION": "NO",
"SHOW_DD_SUBSCRIPTION": "NO",
"SHOW_GRADIENT_SUBSCRIPTION": "YES",
"SHOW_SOLID_SUBSCRIPTION": "NO"
}
}
}
此答案假定您的 DynamoDB 表的主分区键设置为 config_name。